您好我使用jquery验证,我的表单验证并成功提交但包含以前数据的字段,我想在提交表单后重置字段。
$('#frm').reset(); is not working.
submitHandler: function(form)
{
$.ajax({
url: "contact_submit.php",
type: "post",
data: $("#frm").serialize(),
success:function(response)
{
if(response)
{
$('#msg-valid').html('<img src="img/valid.png">Your form is submited, Thank You !');
$('#frm').reset();
}
else{
$('#msg-error').html('<img src="img/error.png">Your form is not submited');
}
}
});
}
答案 0 :(得分:4)
基本上.reset()
是一个原生的javascript函数。您正尝试从包装的Jquery对象调用它。所以可能它会导致你的console
出错,所以为了访问它,首先你必须从Jquery对象中提取javascript对象然后调用那个函数,如
$('#frm')[0].reset();
答案 1 :(得分:0)
尝试
$('#frm')[0].reset();
它将清除表单字段
答案 2 :(得分:0)
我发现,以下代码在提交后重置了表单。
submitHandler: function(form)
{
$.ajax({
url: "contact_submit.php",
type: "post",
data: $("#frm").serialize(),
success:function(response)
{
if(response)
{
$('#msg-valid').html('<img src="img/valid.png">Your form is submited, Thank You !');
$(':input').not(':button, :submit, :reset, :hidden, :checkbox, :radio').val('');
$(':checkbox, :radio').prop('checked', false);
}
else{
$('#msg-error').html('<img src="img/error.png">Your form is not submited');
}
}
});
}