通过AJAX加载的重力表单未提交
我有一个由AJAX函数加载的重力表单。出于某种原因,当我试图提交表单时,我得到一个通过AJAX加载的重力表单未提交,ajax,wordpress,gravity-forms-plugin,gravityforms,Ajax,Wordpress,Gravity Forms Plugin,Gravityforms,我有一个由AJAX函数加载的重力表单。出于某种原因,当我试图提交表单时,我得到一个400错误/wp admin/admin ajax.php#gf_3:1 根据在线指南,我添加了gravity\u form\u enqueue\u脚本(3,true)到myheader.php,该问题尚未解决 表单在预览页面中运行良好。我已经测试了多个表单和多个函数,但是如果通过AJAX加载,我的表单都不会提交。我也有同样的问题,在这里偶然发现了您的问题。我正在通过ajax在同一页面上加载不同的表单,我想我已经找
400错误/wp admin/admin ajax.php#gf_3:1
根据在线指南,我添加了gravity\u form\u enqueue\u脚本(3,true)
到myheader.php
,该问题尚未解决
表单在预览页面中运行良好。我已经测试了多个表单和多个函数,但是如果通过AJAX加载,我的表单都不会提交。我也有同样的问题,在这里偶然发现了您的问题。我正在通过ajax在同一页面上加载不同的表单,我想我已经找到了解决方案 您需要本地化ajax.url
wp_localize_script( 'change-this-to-your-theme-handle', 'ajax', array(
'url' => admin_url( 'admin-ajax.php' )
));
如果表单加载了ajax,GF似乎正在寻找这个。我想他们只是假设,如果您使用ajax加载GF,那么您使用的是ajax.url。相反,我使用我自己的对象来本地化内容,这可能也是您所做的。我在这个问题上花了很多时间。我用的是重力表2.5.1 结果表明,没有触发与表单一起加载的“DOMContentLoaded”事件 在调用表单的函数中,我手动触发了事件,现在它按预期工作
window.document.dispatchEvent(new Event("DOMContentLoaded", { bubbles: true, cancelable: true }));```