Gravity Forms Javascript hook无法在每个页面上正确触发

问题描述

我正在尝试使用重力形式过滤器“ gform_page_loaded”。该筛选器应该在加载每个页面之后运行。我想先记录一下“您好,我在工作”。到控制台。该函数将如下所示。

<script type="text/javascript">
    jQuery(document).on('gform_page_loaded',function(event,form_id,current_page){
       console.log("Hello. I work"); 
    });
</script> 

我已经使用Chrome开发者工具将此功能应用于我正在使用的特定页面/表单。该功能正常工作。但是,当我将其添加到functions.PHP时,当每个页面触发时,该页面都不会执行该功能。 我试图将脚本块添加到我的函数中。例如:

<?PHP
//PHP functions here
?>
<script type='text/javascript'>
    jQuery(document).on('gform_page_loaded',current_page){
       console.log("Hello. I work"); 
    });
</script> 
<?PHP
//continue PHP
?>

我还尝试编写一个使wordpress jQuery入队的PHP函数,并且使用了重力形式的预渲染钩子。例如:

function addjquery(){
wp_enqueue_script('jquery');
}
add_action('wp_enqueue_scripts','addjquery');
function addscript(){
echo "<script type='text/javascript'>
    jQuery(document).on('gform_page_loaded',current_page){
       console.log('Hello. I work'); 
    });
</script> ";
add_filter( 'gform_pre_render','addscript' );

但是,与此有关的问题是,我收到一个控制台错误,指出“未定义jQuery”。

我还尝试使用jQuery CDN代替wordpress定义的jQuery。但是,移至下一页上一页时,该页面不会运行脚本 例如:

function addscript(){
echo "
<script
  src='https://code.jquery.com/jquery-3.5.1.min.js'
  integrity='sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0='
  crossorigin='anonymous'></script>
<script type='text/javascript'>
    jQuery(document).on('gform_page_loaded','addscript' );

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)