Tag: jquery dirtyforms

如何排除控件使表单变脏?

我正在使用这个: $(‘form’).dirtyForms(); 从https://github.com/snikch/jquery.dirtyforms检查我的表单是否脏。 但是,在我的页面上,我有一些简单用于过滤的下拉列表(它们不应该使我的表单“脏”)。 现在,当我选择任何这些下拉列表时,它会导致我的表单变脏。 使用jquery.dirtyforms(我阅读他们的文档,但没有看到如何),如何通过类名排除选择器(下拉列表,文本框等),以便他们不会将表单标记为脏。 我尝试了各种各样的事情,比如分配这些下拉列表/filter一个名为ignoreDirty的类然后在我的jquery中我这样做了: $(‘form’).dirtyForms().ignoreClass(‘ignoreDirty’); 这会产生错误,所以我一定做错了。 注意我也尝试通过属性设置它: $(‘form’).dirtyForms({ ignoreClass : “ignoreDirty” }); 但这仍然使我的表格脏了任​​何控件的类名仍然是ignoreDirty请注意这些filter导致回发,但让我说我去我的表单,并没有做一个单一的更改。 我开始点击这些filter,他们回发的那一刻发生了这种情况:

在beforeunload事件处理程序中停止卸载页面

在用户导航页面代码之前,检查他是否编辑了一些表单字段。 如果他这样做,我会显示一个带有Yes和No按钮的模态窗口。 如果他单击否,则模态应该关闭,用户仍然在该窗口上。 如果是 – 保存更改并卸载。 $(window).bind(‘beforeunload’, function(){ // check if any field is dirty if ($(‘div.form’).dirtyForms(‘isDirty’)) { var modalParams = { Content: ‘You have some unsaved changes, proceed?’ OnSave: navigateAndSave, OnCancel: cancelNavigate } ShowModal(modalParams); } }) function navigateAndSave() { // Do stuff }; function cancelNavigate() { // Stop page from unloading and close the […]