使用一个javascript验证多个表单

使用一个javascript验证多个表单,javascript,Javascript,我有一个页面,有6个表单,所有表单都有一个同名的值“audit\u id\u upload”。目前,我有一个正在验证(我只是寻找空值)与 函数validateForm() { var x=文档.forms[“审计上传”][“审计id上传”]。值; 如果(x==null | | x==“”) { 警报(“请选择审核”); 返回false; } } 我是否可以调整它以验证其他表单,而无需再重复5次 谢谢因为在每个表单中都有一个带有audit\u id\u upload的输入元素,所以您可以将表单的

我有一个页面,有6个表单,所有表单都有一个同名的值“audit\u id\u upload”。目前,我有一个正在验证(我只是寻找空值)与

函数validateForm()
{
var x=文档.forms[“审计上传”][“审计id上传”]。值;
如果(x==null | | x==“”)
{
警报(“请选择审核”);
返回false;
}
}
我是否可以调整它以验证其他表单,而无需再重复5次


谢谢

因为在每个表单中都有一个带有
audit\u id\u upload
的输入元素,所以您可以将表单的名称传递给此函数,并使用它来验证项目

function validateForm(fName)
{
   var x=document.forms[fName]["audit_id_upload"].value;
   if (x==null || x=="")
   {
      alert("Please Select an Audit");
      return false;
   }
   return true;
}
并在for onSubmit事件中调用它

<form name='f1' onsubmit="return validateForm('f1')">

</form>

<form name='f2' onsubmit="return validateForm('f2')">

</form>

<form name='f3' onsubmit="return validateForm('f3')">

</form>

由于您在每个表单中都有一个带有
audit\u id\u upload
的输入元素,因此您可以将表单的名称传递给此函数,并使用它来验证项目

function validateForm(fName)
{
   var x=document.forms[fName]["audit_id_upload"].value;
   if (x==null || x=="")
   {
      alert("Please Select an Audit");
      return false;
   }
   return true;
}
并在for onSubmit事件中调用它

<form name='f1' onsubmit="return validateForm('f1')">

</form>

<form name='f2' onsubmit="return validateForm('f2')">

</form>

<form name='f3' onsubmit="return validateForm('f3')">

</form>

试试这个:

<html>
    <script type="text/javascript">
    function test(theform)
    {
        if (theform.thefield.value == "foo") return true;
        else return false;
    }
    </script>
    <body>
        <form action="" onsubmit="return test(this);">
        <input type="text" value="" name="thefield" />
        <input type="submit" />
        </form>
        <form action="" onsubmit="return test(this);">
        <input type="text" value="" name="thefield" />
        <input type="submit" />
        </form>
        <form action="" onsubmit="return test(this);">
        <input type="text" value="" name="thefield" />
        <input type="submit" />
        </form>
    </body>
</html>

功能测试(表格)
{
if(theform.thefield.value==“foo”)返回true;
否则返回false;
}
试试这个:

<html>
    <script type="text/javascript">
    function test(theform)
    {
        if (theform.thefield.value == "foo") return true;
        else return false;
    }
    </script>
    <body>
        <form action="" onsubmit="return test(this);">
        <input type="text" value="" name="thefield" />
        <input type="submit" />
        </form>
        <form action="" onsubmit="return test(this);">
        <input type="text" value="" name="thefield" />
        <input type="submit" />
        </form>
        <form action="" onsubmit="return test(this);">
        <input type="text" value="" name="thefield" />
        <input type="submit" />
        </form>
    </body>
</html>

功能测试(表格)
{
if(theform.thefield.value==“foo”)返回true;
否则返回false;
}

Gah!比我快。我正要提供同样的解决方案。一个很好的解决方案:)Brill,我在使用onsubmit,但我想我必须为脚本中的每个表单名称都有一个引用,没有想到要这样传递值,谢谢!好人。我希望它对您有所帮助,并记住将anwser作为anwser进行检查,以帮助具有相同问题的其他用户并改进SO网站。:)很好的解决方案,但是您可以将“this”传递给函数,这样函数就不需要重新搜索表单了。:)啊!比我快。我正要提供同样的解决方案。一个很好的解决方案:)Brill,我在使用onsubmit,但我想我必须为脚本中的每个表单名称都有一个引用,没有想到要这样传递值,谢谢!好人。我希望它对您有所帮助,并记住将anwser作为anwser进行检查,以帮助具有相同问题的其他用户并改进SO网站。:)很好的解决方案,但是您可以将“this”传递给函数,这样函数就不需要重新搜索表单了。:)