4

現在の重力フォームで jQuery を使用しています。ただし、フォームを送信すると、不適切な検証が返され、jQuery ターゲットの一部が失われます。

$(document).ready(function() {フィールドが不適切な検証でリロードされたら、jQuery を呼び出すものと交換する方法に興味があります。

やってみました$("#gform_submit_button_1").click(function() {が、早すぎます。新しいフィールドが ajax から戻ってきたときに発生する必要があります。

4

4 に答える 4

0

重力フォームはgform_confirmation_loadedフックを提供しますが、確認ではなくエラー状態フォームをロードしているため、これはあなたの場合には機能しないと思います。これに対するフックはありませんが、jquery 委任イベントを使用して成功しました。を最初のセレクターとして使用し、.gform_wrapper実際にターゲットにしたいフィールドをターゲットにします。

詳細については、次のドキュメントを参照してください。

于 2015-04-01T16:03:27.970 に答える
-1

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   
}

ただし、これはあまり適切ではなく、Ajax呼び出し後にhtmlが実際に変更された場合にのみ機能します。

于 2013-02-17T17:44:58.723 に答える