Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何添加两个“;提交时=";表单的值?_Javascript_Forms_Onsubmit - Fatal编程技术网

Javascript 如何添加两个“;提交时=";表单的值?

Javascript 如何添加两个“;提交时=";表单的值?,javascript,forms,onsubmit,Javascript,Forms,Onsubmit,我试图使用两个单独的JavaScript函数验证我的表单: <form onsubmit="return formCheck(this); return validate_dropdown();" action="somepage.php" method="post" name="something"> 当我在submit值上只添加一个时,每个函数都可以单独工作,当我添加两个时,只有第一个函数的验证工作,而不是第二个。这里出了什么问题

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

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


当我在submit值上只添加一个时,每个函数都可以单独工作,当我添加两个时,只有第一个函数的验证工作,而不是第二个。这里出了什么问题?

从onsubmit中删除返回并将其添加到函数中:

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

onsubmit=“return(formCheck(this)&&validate_dropdown())”
您的代码将不起作用,因为一旦执行第一个函数(
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)">

函数formValidation(myForm)
{
var结果=函数1(myForm);
结果=结果和函数2(myForm);
返回结果;
}

我没有足够的声誉来投票赞成或反对,但我可以向您保证,当有两次返回时,例如:
返回formCheck(this)和返回validate_dropdown()它需要像
returnformcheck(this)&&validate_dropdown()那样编写

…省略第二个“返回”


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

不会
onsubmit=“return formCheck(this)&&validate_dropdown()”
更简单?更简单的键入,是的。但对于初学者来说,这并不是那么容易理解的。