当表单中没有任何更改时显示警报框

Posted

技术标签:

【中文标题】当表单中没有任何更改时显示警报框【英文标题】:alert box shown when nothing changes are done in form 【发布时间】:2014-06-03 05:21:20 【问题描述】:

当使用此插件的表单没有进行任何更改并且当用户退出表单时,它仍然显示未保存更改的警报框。所以请告诉我如何解决此问题,以便其警报框仅在更改时出现以表格形式完成。这是该插件的链接

https://github.com/snikch/jquery.dirtyforms

我通过使用特定形式的 id 来使用它

 $('business-form').dirtyForms();

【问题讨论】:

如果您通过id 选择一个元素,那么您必须执行$('#id-of-the-element').whatever() 之类的操作。只需添加# 完成但仍然是同样的问题,没有对表单进行任何更改,当我重新加载表单或退出时,它会显示警告框以保存更改。 您是否尝试过打开调试并检查控制台? $.DirtyForms.debug = true; 是的,我已经尝试过了,当我重新加载或退出表单而不进行任何更改时,它仍然显示未保存更改的警报。@Owlvark 我怀疑另一个插件正在干扰。尝试禁用插件,直到问题消失。也许寻找改变元素焦点的东西,比如占位符插件。 【参考方案1】:

默认情况下,脏表单attaches event handlers to most anchor tags on the page,并假设如果单击其中一个,则用户正在尝试从页面导航。

一些第 3 方小部件在其设计中使用锚标记。如果其中任何一个导致有问题的行为,您需要手动忽略它们,方法是设置 $.DirtyForms.ignoreSelector 或将 ignoreClass 添加到元素内的每个锚点或它们所在的父容器中。

更多信息请参见Ignoring Things。

您可以使用FireBug 等工具查看小部件的标记,这样您就可以准确了解如何忽略锚标记。

【讨论】:

以上是关于当表单中没有任何更改时显示警报框的主要内容,如果未能解决你的问题,请参考以下文章

在没有文件路径的 Access 中组合框更改时显示不同的图像

当 API 返回空数据时显示警告(Vue.js / Axios)

当复选框兄弟姐妹更改为选中时显示警报

从后面的代码更改时显示文本框文本

如何通过 Javascript / jQuery 在按钮单击时显示引导警报?

当用户在 danialfarid/ng-file-upload 插件中选择不接受的文件时显示警报框