【发布时间】:2014-05-12 18:36:51
【问题描述】:
【问题讨论】:
-
在你的 ajax 函数中,成功后,简单地隐藏元素。如果您显示您的 ajax 代码会有所帮助。
-
您要隐藏输入还是清除它?
-
成功调用 ajax 清除所有值
$("#Id").val("")
标签: javascript jquery css ajax reset
【问题讨论】:
$("#Id").val("")
标签: javascript jquery css ajax reset
您可以使用reset() 函数将reset 的表单原样变为原来的状态。
如果您使用 ajax 提交表单...可以使用回调函数完成,但我建议使用 .done() 和 fail() 函数来处理这两种情况。
所以,会是这样的:
$.post( "example_post_page.php", example_form_data )
.done(function() {
// Looks good
// Let the user know with a message and then, clears the form.
alert( "success" );
$('#form-contact')[0].reset();
// -------------------^ Same behavior as <input type="reset" /> element.
})
.fail(function() {
// Show some warning message
// Don't clear the data, so the user don't have to type all over again.
alert( "error" );
});
当然,这只是一个示例,可以改进,例如...替换那些警报,用一个漂亮的模态框,在有错误的字段中添加一些警告类,等等...
更多信息:jquery.post
【讨论】:
reset。不过,您可能会使用完全原生的 DOM,document.getElementById("form-contact").reset() :-) 或 $(…).each(function(){this.reset();})
您可以为所有输入添加一个类,例如“.input”。然后,在成功函数中,您可以使用类选择器一次清除所有输入,如下所示:
$('.input').val('')
这将节省您为每个输入编写一行代码。干净多了。
【讨论】:
您需要清除答案,然后删除验证,试试这个代码
var $form = $('#form-contact');
$form.find('input, textarea').val('');
SimpleForm.clearErrors($form)
【讨论】:
只需为所有字段添加一个通用类,例如- clearMe,并在你的 ajax 成功部分简单地输入 $(".clearMe").val("")。
【讨论】: