javascript - 退出确认功能并使用javascript和jQuery删除提交功能

原文 标签 javascript jquery ruby-on-rails forms

我希望能够允许用户确认如果他们不想提交表单是否要离开页面。但是,我不希望此功能在提交按钮上工作。当用户点击提交时,我不希望他们与退出确认混淆。
相关的 id 是 #publishbtn,我正在尝试使用 .off 方法。
脚本在页面底部
不确定这是否是一个问题。

<%= f.submit "PUBLISH", :class => "greenbtn extrayo", :id => "publishbtn" %>


<script type="text/javascript">
  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
    return "Ready to move on? Or you wanna leave?";
  }
  $( "#publishbtn" ).click(function() {
  $( "body" )
    .off( "click", "#publishbtn", confirmExit )
    .find( "#publishbtn" )
      .text( "Put into" );
});
</script>

最佳答案

使用 window.onbeforeunload = null删除监听器。要在表单提交时删除它,您可以使用以下内容:

$('#someForm').on('submit', function (event) {
    window.onbeforeunload = null;
});

哪里someForm是您 <form> 的 ID元素。

关于javascript - 退出确认功能并使用javascript和jQuery删除提交功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30061527/

相关文章:

javascript - 页面上 "layers"中的两个语义侧边栏?

jquery - x秒后添加类(class),并滚动删除类(class)

javascript - Redbox替代品?

mysql - Mysql2::Error-用户'root'@'localhost'的访问被拒绝(使用密码:是)

javascript - 使用 JavaScript 向 JSON 对象添加新属性(元素)

javascript - 用于相对于用户在约束内单击的位置定位框的数学公式?

javascript - 将CSV文件转换为2D数组

javascript - Fancybox jQuery多个弹出框

jquery - jQuery数据表+ Twitter Bootstrap CSS问题

ruby-on-rails - 无论如何在omniauth builder中使用可变 key 和 secret ?