javascript - unable to get hidden field value using parent 's class name -


my html code is-

<tr class="selected"> <td id="participantid">xxxxx1234</td> <input type="hidden" value="000001234" id="taxid"> <td id="fullname">y, x</td> </tr> 

here, want hidden field value. can not use id of hidden field value because there multiple rows can contain hidden field same id "taxid". want value using <tr> class name. i.e. selected.

i using below code value giving me 'undefined' value.

var x = document.getelementsbyclassname("selected")[0]; var y = x.getelementsbytagname("input")[0]; alert(y.value); 

alert statement shows undefined value. missing on here?

first, cannot have multiple elements in document identical id values. have altered , alone may solve problem.

second, html invalid. input must inside of td.

next, there no reason use getelementsbyclassname() or getelementsbytagname() when looking 1 element - it's wasteful because wind searching entire document when interested in 1 item.

also, both of methods return "live" node lists require re-scanning entire document every time results referenced. use cases limited.

instead use .queryselector() when want find 1 item based on valid css selector , .queryselectorall() when want find set of matching elements.

assuming these things corrected, can this:

var x = document.queryselector(".selected td input[type=hidden]");  alert(x.value);
<table>    <tr class="selected">      <td id="participantid">xxxxx1234       <input type="hidden" value="000001234" id="taxid">      </td>      <td id="fullname">y, x</td>    </tr>  </table>


Comments

Popular posts from this blog

javascript - Create a stacked percentage column -

Optimising Firebase database by automatically overwriting data -

javascript - Angular UI-Grid customTemplate directive causing rows to load slowly/? -