2011-08-09 24 views
1

我正在嘗試實現此post中概述的解決方案,但無法使其工作。獲取jQuery beforeSend並完成在Rails 3中的工作

application.js 

$(document).ready(function(){ 
    $.ajaxSetup({ 
     beforeSend:function(){ 
      $('#loading').show(); 
     }, 
     complete:function(){ 
      $('#loading').hide(); 
     } 
    }); 
}); 

application.html.erb 

    <div id="loading" style="display:none;"><img src="/img/ajax-loader-circle.gif" ></br></br>Please wait...</div> 

從我的形式,我加入:remote => true,我可以告訴大家,一個AJAX調用有人在看Rails的日誌。但是,beforeSend show從未觸發過。思考?

+0

'

'應該'

' – Rafay

回答

2

我會建議使用:

$('#loading').ajaxStart(function(){ 
    $(this).show(); 
}).ajaxStop(function(){ 
    $(this).hide(); 
}); 

,或者如果你想爲一個特定的形式ID:

$('#someFormID') 
.ajaxStart(function() { 
    $('#loading').show(); 
}) 
.ajaxStop(function() { 
    $('#loading').hide(); 
}); 

確保它是包裹在一個DOM就緒塊(像你這樣做) 。這些都是我的一個應用程序的示例。