javascript - 用户提交表单时如何禁用 beforeunload 操作?

标签 javascript jquery ajax onbeforeunload

我有一小段代码:

<script>
$(window).bind('beforeunload', function() {
  $.ajax({
    async: false,
    type: 'POST',
    url: '/something'
    });
  });
</script>

我想知道,当用户点击提交按钮时,如何禁用此请求。

基本上就像这里一样。当您提出问题并决定关闭页面时,您会看到一个警告窗口,但在您提交表单时不会发生这种情况。

最佳答案

调用unbind使用 beforeunload 事件处理程序:

$('form#someForm').submit(function() {
   $(window).unbind('beforeunload');
});

要阻止提交表单,请添加以下行:

   return false;

关于javascript - 用户提交表单时如何禁用 beforeunload 操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4787995/

相关文章:

javascript - React - 如何在 AJAX 请求后更新状态

javascript - jquery - 加载功能在 Chrome 中无法正常工作

javascript - 无法将 Javascript 对象绑定(bind)到操作 Controller

javascript - Javascript 表单与 Ajax 一致工作以登录到私有(private) Magento 商店的问题

javascript - 有没有办法只用一个回调调用递归地进行异步调用?

javascript - 如何在 JavaScript 中使用数组创建国家/地区列表?我在页面中总共有 10 个或更多选择国家/地区框

javascript - 澄清 Mockgoose/Mongoose 的用法?

javascript - 在 URL 中发布多个变量并使用复选框

javascript - IE 中的 JQuery 复选框列表问题?保存为开、开、开的值应为 10、12、13 等

jquery - 如何获得对同一GSP页面的回复