4

我正在使用 jquery 数据表。我在表格中为每一行使用复选框。现在我想当用户单击选择表外的所有链接时,将选择表中的所有记录。为此,我正在使用此功能。

function checkAll(formname, checktoggle)
{  
 var checkboxes = new Array(); 
 checkboxes = document[formname].getElementsByTagName('input');
 for (var i=0; i<checkboxes.length; i++)  {
  if (checkboxes[i].type == 'checkbox')   {
    checkboxes[i].checked = checktoggle;
   }
 }

}

这里选择所有链接是

 <a onclick="javascript:checkAll('frm_charges', true);" href="javascript:void(0);">Select All</a>

“frm_charges”是表单的名称和 ID。

这是我在表格中使用的复选框的代码。

  <input type="checkbox" value="742" name="charges[]" class="charges"  style="opacity: 0; position: absolute; z-index: -1; visibility: hidden;">

现在我的问题是我有分页它是从第一页而不是所有页面中选择行。截屏

4

3 回答 3

1

尝试这个:

$(function () {
    var oTable = $('#datatable').dataTable();
    $('#selectall').click(function () {

       var checkall =$('.main_table').find(':checkbox').attr('checked','checked');
       $.uniform.update(checkall);
    });
});

$(function () {
    var oTable = $('#datatable').dataTable();
    $('#deselectall').click(function () {
      //alert('hi');
       var checkall =$('.main_table').find(':checkbox').attr('checked',false);
       $.uniform.update(checkall);
    });
});
于 2013-06-11T14:32:47.540 回答
1

所以问题是你的javascript只在屏幕上显示复选框。您需要做的是获取原始表数据中的复选框。在以下示例中,我获取所有表数据,循环遍历它标记复选框并重绘数据表:

// var oTable - reference to your datatable object
var checkboxColumn = 14; // column number that has the checkboxes in it

function checkAll(checktoggle) {
    // get all datatable data
    var data = oTable.fnGetData();

    // loop through all data
    for (var i in data) {
        // convert the input into jQuery object
        var row = $('<div>' + data[i][checkboxColumn] + '</div>');

        // Check the boxes as needed
        row.children('input').attr('checked', (checktoggle) ? 'checked' : false);

        // update the data in datatables
        oTable.fnUpdate(row.html(), parseInt(i, 10), checktoggle, false, false);
    }

    // redraw the datatable
    oTable.fnDraw();
}
于 2013-06-07T13:24:55.670 回答
0

您可以参考下面的链接,这将给出明确的功能想法如何实现

http://datatables.net/examples/api/form.html
于 2013-06-11T14:25:45.003 回答