你可以看到,我必须首先检查所有表格是否为空,第二个功能是验证捕获器,当我将它们组合在一起同时工作时,我想首先验证第一个函数,当该函数返回true时,另一个函数开始,
这是我在表单上使用的代码
<form action="reg.php" method="post" enctype="application/x-www-form-urlencoded" onsubmit=" Checking(this); return jcap();" >
正如你所看到的,两个函数同时执行
所以我试过这个
<form action="reg.php" method="post" enctype="application/x-www-form-urlencoded" onsubmit=" if(Checking(this) == true ){ return jcap();}" >
绕过两个
我也试过这个
<form action="reg.php" method="post" enctype="application/x-www-form-urlencoded" onsubmit=" return(Checking(this) && jcap(this));" >
它绕过了jcap函数
答案 0 :(得分:2)
看起来Checking()
没有有效的返回值。该脚本可能有错误并阻止处理。相应地更新功能。 E.g。
function Checking(form) {
if (form is valid) {
return true;
} else {
return false;
}
}
这样第三种方法应该有效。
那说(并且与实际问题无关),我尝试遵循JavaScript编码约定(函数以小写开头)并且还给函数一些更明智的名称,例如checkCaptcha()
和checkForm()
。
答案 1 :(得分:1)
将两者结合在一个函数中:
function checkMyForm() {
if(check_fields() == true) {
if(check_captha() == true) {
return true;
}
}
return false;
}
答案 2 :(得分:0)
没有你的onsubmit语法错误。
试试这个
function checkForm() {
if(Checking() && jcap())
return true;
return false;
}
和你的表格:
<form action="reg.php" method="post" enctype="application/x-www-form-urlencoded" onsubmit="return checkForm();">