2012-09-30 55 views
1

我正在使用引力形式將我的潛在客戶提交給第三方,問題是當我點擊提交時,需要5秒鐘才能獲得回覆併發布潛在客戶,而這種情況正在發生我想向用戶顯示加載或搜索動畫。點擊提交重力形式時顯示加載動畫

我使用重力形式,我不知道在哪裏以及如何添加此功能。

有人可以幫助我解決這個問題,我沒有使用ajax。

+2

當然可以。但首先,[你有什麼嘗試](http://mattgemmell.com/2008/12/08/what-have-you-tried/)? – maiorano84

+0

你是通過gform_post_submission鉤子做的嗎? – McNab

+0

問題是我不知道哪裏可以開始我只是失去了一些,我的一些活動是活的,因此不知道或不能承擔風險,直到我知道在哪裏做出改變....任何方向將是非常有幫助的 –

回答

2

當您在PHP短代碼中將AJAX設置爲true時,最新的更新應該有一個默認的加載圖像。

當AJAX屬性爲真喜歡這裏

<?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中嘗試這種覆蓋圖片src時,它的可見的「submitContactForm」函數中。

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插件時重寫該圖像。

+0

這段代碼似乎適用於我,但後來我遇到了一個Firefox和重力形式的條紋插件的問題。看起來這個代碼干擾了Firefox中正確識別的Stripe.js(在Mac和PC上測試版本36和48)。其他瀏覽器也可以,但Firefox用戶會收到「沒有來自Stripe.js的響應」錯誤。 – EFC

+1

這是一個不錯的開始。我遇到了一些替代'live'的技巧,因爲它現在已經被棄用了,但是這似乎對我有用。我用''('#gform_wrapper_1')。on('click','.gform_button',function(){'並用_this.off替換_this.die('click')'(也不贊成使用) '點擊');'。謝謝。 – Jake