Javascript表单验证访问值

Javascript表单验证访问值,javascript,forms,function,validation,Javascript,Forms,Function,Validation,如果我将表单传递给Javascript验证函数,如果我不知道表单的名称,那么访问字段中的值的语法是什么 我在HTML中传递它,如下所示: <form method=... action=...> <input type="text" name="qty-box" value="100" onkeydown="if (event.keyCode == 13) addBoxSubmit(this);" /> </form> function addBoxS

如果我将表单传递给Javascript验证函数,如果我不知道表单的名称,那么访问字段中的值的语法是什么

我在HTML中传递它,如下所示:

<form method=...  action=...>
 <input type="text" name="qty-box" value="100" onkeydown="if (event.keyCode == 13) addBoxSubmit(this);" />
</form>
 function addBoxSubmit (myForm) { 
  //how to access the form values none of these methods worked, 
  //I need to know the correct syntax
  //I tried     myform.['qty-box'].value;
  //I tried     myForm['qty-box'].value;
  //I tried     document.myForm.['qty-box'].value;
  //I tried     document.myForm['qty-box'].value;
 }

对于这个应用程序,我将在页面上有许多表单,我希望使用我的验证函数,实际上数据表上的每一行都是它自己的表单。我不能只按名称访问表单,因为它们是动态生成的序列化名称。

您可以在Javascript中设置一个循环,并迭代页面上的所有表单:
document.forms[I]
。然后检查每个表单上的值

本例中的问题是,我没有将表单传递给验证函数,而只是传递表单上的元素。如果您拥有元素,则可以使用以下语法访问给定元素的表单:

var formName=myElement.form.name


请参阅:

可能我没有在html中正确传递表单?您可以将表单的id设置为
qty-box
,然后设置
document.getElementById('qty-box')
。或者只是
document.qty框
,但一个问题可能是Javascript不喜欢对象名中有一个-,因为它是Javascript中的减号。
onkeydown
事件处理程序将执行
this
作为接收键的
输入
元素