[英]The jquery validating the form fields but not submitting the form data to targeted file
我正在尝试使用jquery和ajax验证联系我们表单,表单字段正在成功验证,但是数据未提交到php文件,即contact_submit.php。 请给我答案……谢谢!
$(document).ready(function(){
var $form = $(this);
$('#frm').validate({
rules: {
name: {
required: true
},
email: {
required: true,
email: true
},
mobile: {
minlength: 10,
maxlength:10,
number:true,
required: true
},
message: {
required: true
}
},
highlight: function(element) {
$(element).closest('.control-group').removeClass('text-success').addClass('has-warning');
},
/*success: function(element) {
element
.text('OK!').addClass('valid')
.closest('.control-group').removeClass('has-warning').addClass('text-success');
},*/
submitHandler: function(form)
{
$ajax({
url: "contact_submit.php",
type: "post",
data: $($form).serialize(),
success:function(response)
{
$('#msg').html('Your form is submited');
}
});
}
});
});
我认为我的提交处理程序中有错误。
我认为问题出在在线data: $($form).serialize()
form
前面的美元符号不应存在。
首先,您在文档就绪函数中使用var $form = $(this)
,这里$(this)指文档不是表单,在内部成功处理函数中,您使用此$($form).serialize()
==>不返回任何内容。
更改:删除了var $form = $(this)
行,并添加了$("#frm").serialize();
在submitHandler
。
试试这个代码..
$(document).ready(function(){
$('#frm').validate({
rules: {
name: {
required: true
},
email: {
required: true,
email: true
},
mobile: {
minlength: 10,
maxlength:10,
number:true,
required: true
},
message: {
required: true
}
},
highlight: function(element) {
$(element).closest('.control-group').removeClass('text-success').addClass('has-warning');
},
/*success: function(element) {
element
.text('OK!').addClass('valid')
.closest('.control-group').removeClass('has-warning').addClass('text-success');
},*/
submitHandler: function(form)
{
$ajax({
url: "contact_submit.php",
type: "post",
data: $("#frm").serialize(), //Or $(form).serialize()
success:function(response)
{
$('#msg').html('Your form is submited');
}
});
}
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.