我已经尝试了所有我想要做的工作,但我仍然无法做到。
我需要的只是一个"全选"复选框,对每个元素执行循环以设置其类并将其id保存在会话变量中。到目前为止,我得到了这段代码的每一部分,除了直观地看到复选框。
这是我的代码:
$('#all').on('change', function () {
if($(this).is(':checked')){
table.$("input[type='checkbox']").each( function() {
console.log($(this).attr("id"));
$(this).prop( "checked" ,true);
console.log($(this).prop("checked"));
var id=$(this).attr("id").split('_')[1];
var id_row=table.row("#row_"+id).index()+1;
$("#tabla_equipos tr:nth-child(" + id_row + ")").addClass('active');
$("table.DTFC_Cloned>tbody tr:nth-child(" + id_row + ")").addClass('active');
funcChechboxes('{{ path('user_session_set')}}',id,'single');
});
}else{
//more code
}
});
我确实在控制台上获得了复选框id,并且" true"他们"检查"的价值道具......即使班级被应用,但也不是框中的漂亮标记。
控制台:
e_1
true
e_2
true
e_3
true
e_5
true
非常感谢任何帮助!
问候。
答案 0 :(得分:1)
查看http://jsfiddle.net/xnxgm1m6/2/
$(document).ready(function(e){
$("#selectall").click(function(){
var b = false;
if($(this).is(":checked"))
b = true;
$("#table").find("tr").each(function(){
$(this).find('input[type="checkbox"]').each(function() {
$(this).prop("checked", b);
var id=$(this).attr("id").split('_')[1];
if(b)
$("#table tr:nth-child(" + id + ")").addClass('active');
else $("#table tr:nth-child(" + id + ")").removeClass('active');
//DON'T KNOW WHAT THIS IS FOR
// $("table.DTFC_Cloned>tbody tr:nth-child(" + id_row + ")").addClass('active');
//funcChechboxes('{{ path('user_session_set')}}',id,'single');
});
});
});
我认为是你想要的。希望有所帮助。
答案 1 :(得分:1)
最后我明白了:因为我正在使用DataTable fixedColumns ,这个api 克隆我的表(是的,现在我有2个表!),我指向错误的表(克隆现在有复选框)。
所以最终的工作代码是这样的:
$('#all').on('click', function () {
if($(this).is(':checked')){
$("table.DTFC_Cloned>tbody").find("input[type='checkbox']").each( function() {
$(this).prop("checked", true).change();
var id=$(this).attr("id").split('_')[1];
var id_row=table.row("#row_"+id).index()+1;
$("#tabla_equipos tr:nth-child(" + id_row + ")").addClass('active');
$("table.DTFC_Cloned>tbody tr:nth-child(" + id_row + ")").addClass('active');
funcChechboxes('{{ path('user_session_set')}}',id);
});
}else{
感谢帮助人员!
答案 2 :(得分:0)
这可以用。
来解决$("#checkbox-reminder").prop("checked", true).checkboxradio();
$('#checkbox-reminder').checkboxradio('refresh');
有关详细信息,请参阅此thread。