2013-01-22 60 views
2

我得到了數據表和精美的jquery-ui以及數據表的首頁。jquery/rails回調一個函數來刷新數據表

不過,我有雖然主要問題是,我在CoffeeScript中/ JS吸

我試圖重新載入數據表每1秒,但沒有看到任何請求進入網絡服務器,因此沒有刷新網頁本身。

這裏是我的代碼:

應用程序/資產/ Java腳本/ comments.js.coffee

jQuery -> 
    $('#comments_id').dataTable 
    sPaginationType: "full_numbers" 
    bJQueryUI: true 
    bProcessing: true 
    sAjaxSource: $('#coments') 
    setInterval('$("#comments_id").dataTable().fnReloadAjax()', 3000); 

它出現的setInterval回調不被executred重繪表fnDraw。

看來我的setInterval編碼錯了。

這是我在我的應用程序/瀏覽/評論/ index.html.erb代碼

<h1>Listing comments</h1> 

<table id="comments_id" class="display"> 
<thead> 
    <tr> 
    <th>String</th> 
    </tr> 
</thead> 
<% @comments.each do |comment| %> 
<tbody> 
    <tr> 
    <td><%= comment.string %></td> 
    </tr> 
<% end %> 
</tbody> 
</table> 

<br /> 

<%= link_to 'New Comment', new_comment_path %> 

幫助將不勝感激。

+0

一上來完全誠實!

回答

0

您必須設置sAjaxSource和,而不是僅僅重繪的數據表,你應該重新加載:

.dataTable().fnReloadAjax();

參見:JQuery DataTables - AJAX Reloading Not Working

+0

Hiya Ghommey:所以我設置了sAjaxSource:$('#comments')。在評論視圖中,我將表格定義如下

Pinpin

+0

*更新了我原來的帖子,謝謝:) – Pinpin

+0

sAjaxSource必須是一個URL – jantimon