Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
328 views
in Technique[技术] by (71.8m points)

javascript - JavaScript按名称获取元素(JavaScript get element by name)

Consider this function:(考虑以下功能:)

function validate() { var acc = document.getElementsByName('acc').value; var pass = document.getElementsByName('pass').value; alert (acc); } And this HTML part:(而这个HTML部分:) <table border="0" cellpadding="2" cellspacing="0" valign="top"> <tr> <td class="td1">Account</td> <td class="td2"><input type="text" name="acc" /></td> </tr> <tr class="td1"> <td>Password</td> <td class="td2"><input type="password" name="pass" /></td> </tr> </table> <div><button onClick="validate()" class="cupid-greenx">Login now</button></div> The alert box is showing, but it shows "undefined".(显示警报框,但显示“未定义”。)   ask by Juliver Galleto translate from so

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

The reason you're seeing that error is because document.getElementsByName returns a NodeList of elements.(您看到该错误的原因是因为document.getElementsByName返回元素的NodeList 。)

And a NodeList of elements does not have a .value property.(并且元素的NodeList没有.value属性。) Use this instead:(使用此代替:) document.getElementsByName("acc")[0].value

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...