如果提交未单击,则window.onbeforeunload确认

时间:2017-01-16 15:57:35

标签: javascript dom-events

我正在进行测验。在提交表单之前,页面无法关闭,否则所有数据都将丢失。这可以使用:

完成
window.onbeforeunload = function () {
    return "Are you sure?"
}

但如果用户点击了"提交"?如果我不想触发此警报怎么办?我尝试了下面的代码,但它根本不起作用 - 即使窗口关闭,它也不会显示警告。

var clicked_submit = false;
$(document).ready(function () {
      $('#submit-button').click(function () {
          clicked_submit = true;
      });

      window.onbeforeunload = function () {
          if (clicked_submit){

          } else {
              return 'Are you sure?'
          }
      }
  });

1 个答案:

答案 0 :(得分:1)

一个简单的解决方案是只返回没有任何值的函数。

window.onbeforeunload

更简洁的解决方案就是将null设置为var clicked_submit = false; $(document).ready(function () { $('#submit-button').click(function () { clicked_submit = true; }); if(!clicked_submit) { window.onbeforeunload = function () { return 'Are you sure?' } } else { window.onbeforeunload = null; } });

 import os
filename = "C:\Windows\redir.txt"
if os.path.exists(filename):
    print ("Y")
else:
    print ("N")