2015-04-22 41 views
0

我已創建了第一列的數據表作爲每行的複選框,並且在成功時我正在執行Ajax調用我正在檢查複選框,但它僅檢查第一頁不適用於其他頁面。如何在使用分頁時獲得數據表中的複選框值

以下是我的代碼,請幫助我。

$.ajax({ 
    type: 'GET', 
    url: '/PriceList/GetCheckedAccount/', 
    data: { get_param: data1 }, 
    dataType: 'json', 
    success: function (response) {    
      //alert("success"); 
     for (var i = 0, len = response.aaData.length; i < len; i++) {  

     var id = response.aaData[i][1];   
     var chk = $(".chkBox" + id);  
     chk.attr("checked", true);  
    }  
    } 
}); 
+0

你使用的是jQuery數據表? –

+0

是的,我正在使用jQuery數據表 –

+0

這實際上是'dataTables'中的一個錯誤!它不會記住不會顯示的頁面。您可以通過在頁面中允許更多記錄進行交叉驗證! **例如:**如果您顯示5條記錄,只顯示10條記錄,看看它們是否被選中!我之前有這個問題讓我改變我的設計! –

回答

0

我希望draw.dt事件幫助你找出在每一頁的控制重繪

0

只能夠獲得當前頁面上的複選框的值的問題來自於使用的DOM方法或查詢而不直接使用DataTables的API。這不是一個如上所述的錯誤,而是一個效率問題。 DataTable僅存儲當前頁面上的值。爲了訪問其他值必須使用訪問表:

dataTable.rows().nodes().to$().find('input[type="checkbox"]').each(function(){} 

DataTable中在這種情況下是你定義的數據表。

此外,here是複選框值的工作版本被存儲和發送到服務器

欲瞭解更多信息請參見DOM的DataTable FAQs和主題。

相關問題