【问题标题】:Wordpress - Disable "Are you sure you want to navigate away from this page?" when saving custom postWordpress - 禁用“您确定要离开此页面吗?”保存自定义帖子时
【发布时间】:2015-02-03 09:48:56
【问题描述】:

我有一个非常定制的 Wordpress 网站,其中有很多贡献者并且发布了很多帖子。当您尝试发布/更新自定义帖子时,它会显示一个弹出窗口,提示“如果您离开此页面,您所做的更改将会丢失。您确定要离开此页面吗?”。

仅当帖子的修改/新内容位于与“高级自定义字段”插件对应的自定义字段中时,才会发生这种情况。这个弹出窗口对贡献者来说非常烦人。所以我想知道是否可以禁用此弹出窗口或任何解决此问题的方法。

谢谢。

【问题讨论】:

    标签: wordpress


    【解决方案1】:

    好的,所以我能够找到原因。它是 ACF 中的一个 JS 函数,叫做 unload。

    你所要做的就是添加一些JS:

    jQuery( document ).ready( function() {
        // disable the ACF js navigate away pop up
        acf.unload.active = false;
    } );
    

    参考: http://support.advancedcustomfields.com/forums/topic/how-to-disable-js-alert-in-acf_form/

    【讨论】:

      【解决方案2】:

      关于 WP 确认对话框的更一般的答案:

      在 WordPress-4.8 的第 481 行的wp-admin/js/post.js 中,您可以找到“导航离开”确认对话框背后的机制。

      事件:beforeunload.edit-post 是通过 jQuery 的 .on() 函数发起的。 jQuery 让您能够通过 .off() 函数取消绑定事件处理程序。

      通过将以下内容添加到您的 Javascript,您可以在需要时禁用此确认对话框。例如,当您点击帖子上的提交(发布)按钮时,WordPress 本身也会使用它。

      // Prevent WP from asking confirmation to navigate away from the current post.
      jQuery(window).off( 'beforeunload.edit-post' );
      

      附: WordPress 的具体问题应该在:https://wordpress.stackexchange.com/

      【讨论】:

      • 在我的自定义保存按钮的 onclick 属性中添加了它,它可以正常工作 +1
      【解决方案3】:
      jQuery(document).ready(function()
      {
          jQuery(window).off("beforeunload", null);
      });
      

      【讨论】:

      • 请在您的回答中添加一个简短的解释。
      猜你喜欢
      • 1970-01-01
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-10
      • 2013-10-10
      • 2015-03-19
      • 2011-10-12
      相关资源
      最近更新 更多