Find adjacent Get previous sibling plain JSfield fast

by Michel Plungjan

HTML

<table border=1 width="75%" id="myTable">
    <thead>
        <tr>
            <th>col1</th>
            <th>col2</th>
            <th>col3</th>
            <th>col4</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>
                <select>
                    <option>Spiderman</option>
                    <option>Badman</option>
                    <option>IronMan</option>
                    <option>Hulk</option>
                </select>
            </td>
            <td>
                <select>
                    <option>1</option>
                    <option>2</option>
                    <option>3</option>
                    <option>4</option>
                    <option>5</option>
                    <option>6</option>
                </select>
                  </td>
            <td>
                <select>
                    <option value="key1">Key1</option>
                    <option value="key2">Key2</option>
                    <option value="Key3">Key3</option>
                    <option value="key4">Key4</option>
                </select>
                <button type="button" class="get-col3-value">getValue</button>
            </td>
            <td>
                Blank
            </td>
        </tr>
        <tr>
            <td>
                <select>
                    <option>Spiderman</option>
                    <option>Badman</option>
                    <option>IronMan</option>
                    <option>Hulk</option>
                </select>
            </td>
            <td>
                <select>
                    <option>1</option>
                    <option>2</option>
                    <option>3</option>
                    <option>4</option>
                    <option>5</option>
                    <option>6</option>
                </select>
                  </td>
            <td>
                <select>
                    <option value="key1">Key1</option>
                    <option...

JavaScript

function getPreviousSibling(obj) {
  var sib=obj.previousSibling;
  while (sib.nodeType!=1) sib=sib.previousSibling;
  return sib;
}
window.onload=function() {
  var classname = document.getElementsByClassName("get-col3-value");
  var myObj = function(){
   console.log(getPreviousSibling(this).value)
  } 

  for(var i=0;i<classname.length;i++){
    classname[i].addEventListener('click', myObj,false);
  }
}