jQuery表单检查返回true,但需要返回false

提交表单时,我正在运行此表单检查:

if((formData[4].value == 1 || formData[4].value == 2) && !formData[2].value) { 

alert('Please fill out the key field');

return false" title="return false">return false;

} else {

$.ajax({

url: "/ajax/key_check.php",

cache: false,

data: "key=" + formData[4].value,

dataType: "html",

success: function(data) {

if(data == 1) {

alert('Key already exists');

return false;

}

}

});

return true;

}

该脚本有效,如果数据== 1,它会警告键已经存在,但是表单仍在提交。我以为如果data ==

1则返回false将停止处理表单,但是无论如何它都会继续并添加键,并且弹出键已经存在。如果data == 1,如何阻止表单提交?我什至尝试这样做:

if(data == 1) {

alert('Key already exists');

return false;

} else {

return true;

}

然后删除脚本底部的return true,但是会发生相同的问题。弹出窗口出现,但表单仍得到处理。

回答:

一个return回调的回报 从回调 ,不是父功能像你想......但你 得到的效果你想要的,就像这样:

if((formData[4].value == 1 || formData[4].value == 2) && !formData[2].value) { 

alert('Please fill out the key field');

return false;

} else {

$.ajax({

url: "/ajax/key_check.php",

cache: false,

data: "key=" + formData[4].value,

dataType: "html",

success: function(data) {

if(data == 1) {

alert('Key already exists');

} else {

$("#someForm")[0].submit();

}

}

});

return false;

}

这样做永远不会直接提交,但是 如果 检查正常,请调用* native

.submit()方法,提交表单,然后不再运行此处理程序。

以上是 jQuery表单检查返回true,但需要返回false 的全部内容, 来源链接: utcz.com/qa/399628.html

回到顶部