选中所有复选框在JQuery数据表的下一页上不起作用

时间:2016-12-30 12:01:04

标签: javascript jquery html datatables

我正在使用JQuery数据表。我想添加带有复选框的select all列,这样当我点击'select all'复选框时,该页面上的所有复选框都应该被选中。

我使用以下代码:

<table id="myTable" cellspacing="0" width="100%">
    <thead>
        <tr>
            <th> Name</th>
            <th> Type</th>
            <th> Details</th>
            <th>Select <input type="checkbox" name="select_all" value="1" id="select-all"></th>
        </tr>
    </thead>
    <tbody>
        <?php foreach ($test as $data) { ?>
        <tr>
            <td><?php echo $data->name; ?></td>
            <td><?php echo $data->type; ?></td>
            <td><a href="/details">view details</a></td>
            <td><input type="checkbox" name="manuf[]" class="sub_chk" data-id="<?php echo $data->id; ?>"></td>


        </tr>
        <?php } ?>
    </tbody>
</table>
<script>
$(document).ready(function(){
$('#myTable').DataTable();
});

$('#select-all').on('click', function(e) {
if($(this).is(':checked',true))  
{
    $(".sub_chk").prop('checked', true);  
}  
else  
{  
    $(".sub_chk").prop('checked',false);  
}  
});
</script>

以上代码适用于数据表的第一页,但如果我选择第二页并选择“全选”复选框,则会转到第一页,而不是选择第二页中的复选框。

有解决方案吗?

2 个答案:

答案 0 :(得分:1)

<强> Working example

问题来自排序,您应该在firebaseApp.database() .ref("tests/item1/jobs") .orderByValue() .equalTo('bbb') .on("value",function(data){ data.forEach(function(subdata){ console.log('===> main.js', subdata.val()); }); }, function (errorObject) { console.log("===> main.js The read failed: " + errorObject.code); }); 中禁用包含全选复选框的排序。

希望这有帮助。

答案 1 :(得分:0)

我希望这个链接可以帮助您解决问题。 谢谢

  

http://www.gyrocode.com/articles/jquery-datatables-how-to-add-a-checkbox-column/