jquery - 如何在页面刷新时触发事件

标签 jquery

我们网站的后端开发有一个用于表单处理的 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/

相关文章:

PhP 5.4 中的 PhP 上传进度不起作用。未设置 session 变量

javascript - JS文件问题(即使我物理删除它们(js文件),它的方法仍然有效)

javascript - "Show More"X按钮后的按钮

javascript - jQuery/HTML/PHP - 为什么我的表单提交不起作用?

IE8 中的 jQuery ajax 调用错误

javascript - jQuery 中的 if 语句在 Chrome 或 Safari 中不起作用

javascript - 如何在加载图片(在网络中)时向用户显示 gif 动画?

jquery - 尝试使用 jquery 切换 header 中的 Logo 以添加/删除类

javascript - jquery按键: trigger click when ctl+x and ctl+s

javascript - JQuery,左位置错误