0
我有一个表单,我想在提交之前进行验证。如何停止JQuery提交然后运行ajax验证,然后提交表单
我已经尝试了不同的解决方案从stackoverflow但没有得到下面的代码工作。
如果一切正常,我无法提交表单。
$('#form1').submit(function(e) {
e.preventDefault();
var xxx = $('#xxx').val();
var yyy = $('#yyy').val();
var zzz = $('#zzz').val();
var uuu = $('#uuu').val();
var data_string = 'uuu=' + uuu;
if (zzz != '000000' && zzz != '') {
$.ajax({
url: 'ajax.php',
type:'POST',
data: data_string,
dataType: 'json',
cache: false,
success: function(response){
if (response == false) {
if (xxxl == '') {
alert("Text!");
}
else if (yyy == '') {
alert("Text!");
}
else {
$(this).trigger('submit');
}
}
}
});
}
else {
$(this).trigger('submit');
}
});
我删除了preventDefault并添加了async:false。然后我在alert(“Text”)后添加了return false,并用return true替换了$(this).trigger('submit')。现在我收到警报“文字!”但表单仍然提交。当我在alert(“Text!”)之前返回false时,表单只提交并且没有提示。 – mend