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
Post a Comment