【问题标题】:Check if any form fields have changed upon saving asp.net c# [closed]检查保存asp.net c#后是否有任何表单字段发生更改[关闭]
【发布时间】:2015-07-27 11:31:41
【问题描述】:

我有一个包含数百个输入字段的大型 .net 表单,有时用户在没有保存的情况下离开表单页面,当他们尝试离开时检查字段值是否已更改的最佳方法是什么?一些 c# 函数或 javascript?

【问题讨论】:

  • 答案是:javascript。没问题:)
  • 您可以像这样使用 jQuery 设置脏标志:$(":input").change(function() { dirtyFlag = true;});
  • 谢谢,我会走那条路的。

标签: c# asp.net validation redirect


【解决方案1】:

不要将控制权从用户手中夺走 :-)

在退出时询问他是否要保存更改。也许他错误地做了一些更改,您不想保存。

您可以通过 Javascript/Jquery 来实现。比如:

$(document).ready(function() {
    formmodified=0;
    $('form *').change(function(){
        formmodified=1;
    });
    window.onbeforeunload = confirmExit;
    function confirmExit() {
        if (formmodified == 1) {
            return "New information not saved. Do you wish to leave the page?";
        }
    }
    $("input[name='commit']").click(function() {
        formmodified = 0;
    });
});

【讨论】:

  • 虽然我完全同意,但答案有点单薄。这可能是有道理的,因为问题同样薄弱,但让我们尝试纠正它,而不是按照 OP 的规则玩 :)(强制性:我没有投反对票,但是......)
  • @Mackan 感谢您的请求 :-) 我改进了答案。
猜你喜欢
  • 1970-01-01
  • 2011-03-09
  • 2010-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多