1

グラビティ フォームを使用してリードをサード パーティに送信しています。問題は、[送信] をクリックしたときに、返信を取得してリードを投稿するのに 5 秒かかることです。その間、読み込み中または検索中のアニメーションをユーザーに表示したいと考えています。 .

私は重力フォームを使用していますが、この機能をどこにどのように追加するかわかりません。

私はajaxを使用していません。

4

1 に答える 1

2

PHP ショートコードで AJAX が true になっている場合、最新の更新プログラムにはデフォルトの読み込みイメージが含まれているはずです。

ここのように AJAX 属性が true の場合

<?php 
    echo do_shortcode('[gravityform id="1" title="false" description="false" ajax="true"]');
?>

これを行う...

送信ボタンがクリックされたときに、リードの送信が重複しないようにするため。Gravity Form が検証を処理することに注意してください。これにより、ボタンのスタイルが設定され、ボタン内のテキストが変更され、ボタンのクリックが無効になります。読み込み中の画像は、デフォルトで Gravity Forms を介して表示されます。

<script type="text/javascript" language="JavaScript">
$(document).ready(function(){


    $('#gform_1 input.gform_button').live('click', function(){

        submitContactForm( $(this) );

    });

});

    function submitContactForm( _this ){

        _this.die('click');
        _this.css('opacity', '0.5');
        _this.val('Sending...');

        _this.attr('disabled', 'disabled');// using this will stop the form from submitting
        $('#gform_1').submit();// this will make sure that it submits

        //console.log('calibrating...');        
    }

</script>

jquery では、「submitContactForm」関数内で、画像が表示されているときに画像 src をオーバーライドするためにこれを試してください。

if ( _this.closest('.gform_footer').find('img.gform_ajax_spinner').is(':visible') ){
    _this.closest('.gform_footer').find('img.gform_ajax_spinner').attr('src','DIRECTORY OF YOUR CUSTOM SPINNER IMAGE');
}

Gravity Form プラグインを更新するたびにそのイメージをオーバーライドすることを忘れないようにします。

于 2013-01-03T09:01:02.583 に答える