jQuery + Gravity Forms:在错误验证时执行jQuery

Reu*_*ben 4 php ajax wordpress jquery plugins

我在当前重力形式上使用一些jQuery。但是,当我提交表单并通过错误的验证返回时,我失去了一些jQuery目标。

我很好奇$(document).ready(function() {,一旦字段加载有错误的验证后,我该如何交换那些将调用我的jQuery的东西。

$("#gform_submit_button_1").click(function() {但是,我已经尝试过了。当新字段从ajax返回时,它需要发生。

cir*_*ube 6

实际上,这里提供了一个挂钩供使用: gform_post_render

每次呈现表单时都会触发此jQuery挂钩,以允许执行自定义jQuery。这包括初始表单加载,转到多页表单上的下一页/上一页,呈现有验证错误的表单,显示的确认消息等。

jQuery(document).bind('gform_post_render', function(){

    // code to trigger on AJAX form render

});
Run Code Online (Sandbox Code Playgroud)

http://www.gravityhelp.com/documentation/gravity-forms/extending-gravity-forms/hooks/javascript/gform_post_render/


use*_*929 -1

一种解决方案是:捕获提交事件并启动一个时间间隔来检查表单是否发生更改,然后调用您的函数:

$('#your-form').submit(function(){
    html = $('#your-form').html();
    iv = setInterval(function(){
        If($('#your-form').html != html){
            yourfunc();
            clearInterval(iv);
        }
    }, 200);
});

function yourfunc(){
    //your stuff   
}
Run Code Online (Sandbox Code Playgroud)

然而,这不是很简洁,只有在 Ajax 调用后实际更改 html 时它才会起作用。