我有以下代码来检查表单数据,我无法弄清楚它为什么不起作用。
<script type="text/javascript">
function checkStuff() {
// By default, we plan to submit the form.
var formOkay = 1;
// Check to see if field_1 has a value. If not, we note that by changing our variable.
if(document.getElementById('requestorfirstname').value == '')
formOkay = 0;
// Let the user know something is wrong somehow. An alert is easiest.
alert('Requestor Name Required!');
// If you return true the form will submit. If you return false it will not.
if(formOkay == 1) {
return true;
} else {
return false;
}
}
</script>
现在这里是html表单,它检查提交。
<input type="text" name="requestorfirstname" />
感谢您的帮助!
答案 0 :(得分:4)
document.getElementById
按ID查找元素。您的字段没有ID,它有一个NAME。
答案 1 :(得分:2)
document.getElementById
按id
选择一个元素,而不是name
。
解决问题的一些方法:
id="requestorfirstname"
添加到输入元素。document.getElementsByName('requestorfirstname')[0]
。 getElementsByName
返回一个列表,因此[0]
。document.querySelector('[name="requestorfirstname"]')
方法。获取对表单的引用,并使用.elements
集合访问该元素。
例如,如果您的页面只有一个表单:
document.forms[0].elements['requestorfirstname']
答案 2 :(得分:2)
HTML元素的name
属性与id
不同。您的输入字段中没有ID,因此getElementById
无法找到它。将元素更改为:
<input type="text" name="requestorfirstname" id="requestorfirstname" />
^^^^^^^^^^^^^^^^^^^^^^^^ - add this