我们网站的后端开发有一个用于表单处理的 div.errors,它始终存在但为空,除非表单提交时出现错误。首先隐藏 div,然后检查它是否有长度,如果确实显示它,这很容易。
if ($(".errors").text().trim().length) {
$(this).css('display', 'block');
}
问题是这样的,在页面加载时 div.errors 是空的并且是隐藏的。当您提交表单时,如果出现错误,div.erros 就会有长度,但页面会刷新(再次加载)并且事件不会再次触发。 .live 是一个可行的选择吗?
最佳答案
问题是 this
停止引用该元素:
$(".errors").each(function () {
if ($(this).text().trim().length) {
$(this).css('display', 'block');
}
});
关于jquery - 如何在页面刷新时触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13282599/