如何在表单中添加两个“on submit =”值?

时间:2010-06-24 03:35:30

标签: javascript forms onsubmit

我正在尝试使用两个单独的JavaScript函数验证我的表单:

<form onsubmit="return formCheck(this); return validate_dropdown();"  
      action="somepage.php" 
      method="post" 
      name="something">

当我在提交值上只添加一个时,每个函数单独工作,当我添加两个只有第一个函数的验证工作,而不是第二个。这有什么不对?

4 个答案:

答案 0 :(得分:4)

从onsubmit中删除返回值并将它们添加到函数中:

onsubmit="return (formCheck(this) && validate_dropdown())"

答案 1 :(得分:2)

onsubmit="return (formCheck(this) && validate_dropdown())"

答案 2 :(得分:1)

我没有足够的声誉来投票或投票,但我可以向你保证,当有两次退货时,例如:return formCheck(this) && return validate_dropdown();需要写成return formCheck(this) && validate_dropdown();

...省略第二次“回归”。

所以对这个帖子投票最多的回复实际上是错误的,Anax的回复率为0票(在撰写本文时)解决了我的问题。其他人在IE中产生了脚本错误。

答案 3 :(得分:0)

您的代码无效,因为只要第一个函数(formCheck)被执行,它就会返回一个值,该值将允许或拒绝表单提交。

如果您想要同时使用两个或更多功能,您可以组合他们的结果或编写一个新功能,然后再运行验证功能并返回结果。

方法A.

<form onsubmit="return (function1(this) && function2(this))">

方法B.

<script type="text/javascript">
function formValidation(myForm)
{
    var result =  function1(myForm);
    result = result && function2(myForm);
    return result;
}
</script>

<form onsubmit="return formValidation(this)">