我有一个C#.NET MVC3 Web应用程序,我有一个与附加的Stackoverflow问题相关的问题。我正在使用window.beforeunload事件来查看我的View上是否有更改。如果是这样,我会提醒用户他们有未保存的更改。但是,如果他们选择了“创建(提交)”按钮,则会弹出警告用户的对话框。如果选中“创建”按钮,我不想弹出对话框。有任何想法吗?有没有办法看到点击了哪个控件?
答案 0 :(得分:2)
我可以想到2个解决方案:
$('#submitBtn').click(function() {
unbindOnBeforeUnload();
});
// OR
// maybe you have multiple cases where you don't want this triggered,
// so this will be better
var shouldTriggerOnBeforeUnload = true;
$('#submitBtn').click(function() {
shouldTriggerOnBeforeUnload = false;
});
...
$(document).unload(function() {
if (shouldTriggerOnBeforeUnload) {
confirm();
}
});
我用类似jQuery的语法编写它,但只是为了保持代码简洁,你可以将它调整到你想要的任何东西。