gpt4 book ai didi

jquery 验证不会阻止表单提交

转载 作者:行者123 更新时间:2023-12-01 00:35:35 25 4
gpt4 key购买 nike

我在这里绞尽脑汁,试图让 jquery 验证与我的表单完美配合。

验证似乎不起作用。表单只是将自身提交到页面。我可以短暂地看到页面提交之前出现的验证错误消息...

我的代码:

//HTML form
<form id="form_scheduleEvent" name="form_scheduleEvent">
<label for="name">Name:</label><input class="short" type="text" name="name" id="name" />
<label for="address">Address:</label><input type="text" name="address" id="address" />
<label for="phone">Phone:</label><input type="text" name="phone" id="phone" />
<label for="comments">Comments:</label><textarea name="comments" id="comments" /></textarea>
<input type="submit" id="submitRequest" value="Add"/>
</form>


//jquery
//Validation rules
$('#form_scheduleEvent').validate({
rules: {
name : {required: true, maxlength: 45},
address : {required: true, maxlength: 45},
phone : "required"
}
});


$('#submitRequest').click(function(){
$.ajax({
type: "POST",
url: "common/ajax_event.php",
data: formSerialized,
timeout:3000,
error:function(){alert('Error');},
success: function() {alert('It worked!');}
});

return false;
});

我尝试更新到 jquery 和 jquery.validation 的最新版本......

如有任何帮助,我们将不胜感激!谢谢。

更新

//The validation is working, but I can't even get the alert to show....
$('#form_scheduleEvent').validate({
rules: {
name : {required: true, maxlength: 45},
address : {required: true, maxlength: 45},
phone : "required",
submitHandler: function(){
alert('test');
}
}
});

最佳答案

您应该将 AJAX 提交调用移至由验证插件中的提交回调触发:

$('#form_scheduleEvent').validate({
rules: {
name : {required: true, maxlength: 45},
address : {required: true, maxlength: 45},
phone : "required",
submitHandler: function(form) { DoSubmit(); }
}
});


function DoSubmit(){
$.ajax({
type: "POST",
url: "common/ajax_event.php",
data: formSerialized,
timeout:3000,
error:function(){alert('Error');},
success: function() {alert('It worked!');}
}

关于jquery 验证不会阻止表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4196483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com