Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery Datatables将复选框设置为选中_Javascript_Jquery_Html_Datatables - Fatal编程技术网

Javascript JQuery Datatables将复选框设置为选中

Javascript JQuery Datatables将复选框设置为选中,javascript,jquery,html,datatables,Javascript,Jquery,Html,Datatables,我目前正在使用jquerydatatables将信息存储到中,并使用MD数组填充它 但我想在默认情况下,如果满足条件,将复选框属性设置为:checked。我尝试了各种方法,如.addclass&.addprop来找到任何解决方法,但我无法让它以我需要的方式工作 例如,如果值为disable,则不执行任何操作;如果为enable,则将复选框值设置为:checked 我已经附上了一个复制我的问题 其代码是: HTML <table id="userTable" class="display"

我目前正在使用jquerydatatables将信息存储到中,并使用MD数组填充它

但我想在默认情况下,如果满足条件,将复选框属性设置为
:checked
。我尝试了各种方法,如
.addclass
&
.addprop
来找到任何解决方法,但我无法让它以我需要的方式工作

例如,如果值为disable,则不执行任何操作;如果为enable,则将复选框值设置为
:checked

我已经附上了一个复制我的问题

其代码是:

HTML

<table id="userTable" class="display" width="100%">
  <thead>
    <tr>
      <th>Enable/Disable</th>
      <th>Number</th>
      <th>Name</th>
    </tr>
  </thead>
  <tbody>
  </tbody>
</table>

启用/禁用
数
名称
Javascript/JQuery

jQuery(function($) {
  data = [
    ['User_488', 'User 1', 'disable'],
    ['User_487', 'User 2', 'disable'],
    ['User_477', 'User 3', 'disable'],
    ['User_490', 'User 4', 'disable'],
    ['1000', 'User 5', 'enable'],
    ['1001', 'User 6', 'enable'],
    ['1002', 'User 7', 'enable'],
    ['1004', 'User 8', 'enable']
  ]

  var t = $('#userTable').DataTable({
    'columnDefs': [{
      'targets': 0,
      'searchable': false,
      'orderable': false,
      'className': 'dt-body-center',
      'render': function(data, type, full, meta) {
        return '<input type="checkbox" class="checkbox_check">';
      }
    }],
    order: []
  });

  function checkbox() {
    t.clear();
    if (data) {
      for (var i = 0; i < data.length; i++) {
        var number = data[i][0];
        var name = data[i][1];
        var statustemp = "";
        var resarr = new Array(statustemp, number, name);
        if (status === "disable" || status == null) {
          t.row.add(resarr).draw(false);
        } else {
          t.row.add(resarr).draw(false);
        }
      }
      t.draw(false);
    }
  };
  checkbox();
});
jQuery(函数($){
数据=[
['User_488','User 1','disable'],
['User_487','User 2','disable'],
['User_477','User 3','disable'],
['User_490','User 4','disable'],
['1000','用户5','启用'],
['1001','User 6','enable'],
['1002','User 7','enable'],
['1004','User 8','enable']
]
var t=$('#userTable').DataTable({
“columnDefs”:[{
“目标”:0,
“可搜索”:false,
“orderable”:false,
'className':'dt body center',
“呈现”:函数(数据、类型、完整、元){
返回“”;
}
}],
订单:[]
});
函数复选框(){
t、 清除();
如果(数据){
对于(变量i=0;i

以前有人有过这个问题吗?

请查看
attr

'columns': [
    {
        "title": "Enable/Disable",
        "render": function(data, type, row, meta){
            var checkbox = $("<input/>",{
                "type": "checkbox"
            });
            if(row[2] === "enable"){
                checkbox.attr("checked", "checked");
                checkbox.addClass("checkbox_checked");
            }else{
                checkbox.addClass("checkbox_unchecked");
            }
            return checkbox.prop("outerHTML")
        }
    },{
        "title": "Number",
        "render": function(data, type, row, meta){
            return row[0];
        }
    },{
        "title": "Name",
        "render": function(data, type, row, meta){
            return row[1];
        }
    }
]
“列”:[
{
“标题”:“启用/禁用”,
“呈现”:函数(数据、类型、行、元){
var复选框=$(“”{
“键入”:“复选框”
});
如果(第[2]行=“启用”){
checkbox.attr(“checked”、“checked”);
checkbox.addClass(“checkbox_checked”);
}否则{
checkbox.addClass(“checkbox_未选中”);
}
return checkbox.prop(“outerHTML”)
}
},{
“标题”:“编号”,
“呈现”:函数(数据、类型、行、元){
返回行[0];
}
},{
“标题”:“名称”,
“呈现”:函数(数据、类型、行、元){
返回行[1];
}
}
]

工作

对数据进行排序,以便将其交给datatable,然后根据其值呈现列

jQuery(function($) {
  data = [
    ['disable','User_488', 'User 1' ],
    [ 'disable','User_487', 'User 2'],
    ['disable','User_477', 'User 3'],
    ['disable','User_490', 'User 4'],
    ['enable','1000', 'User 5'],
    ['enable','1001', 'User 6'],
    ['enable','1002', 'User 7'],
    ['enable','1004', 'User 8']
  ]

  var t = $('#userTable').DataTable({
    "data": data,
    'columnDefs': [{
      'targets': 0,
      'searchable': false,
      'orderable': false,
      'className': 'dt-body-center',
      'render': function(data, type, full, meta) {
        if(data === "disable"){
            return '<input type="checkbox" class="checkbox_check">';
        }else{
            return '<input type="checkbox" checked class="checkbox_check">';
        }
      }
    }],
    order: [],
  });
});
jQuery(函数($){
数据=[
['disable','User_488','User 1'],
['disable'、'User_487'、'User 2'],
['disable'、'User_477'、'User 3'],
['disable'、'User_490'、'User 4'],
['enable'、'1000'、'User 5'],
['enable'、'1001'、'User 6'],
['enable'、'1002'、'User 7'],
['enable'、'1004'、'User 8']
]
var t=$('#userTable').DataTable({
“数据”:数据,
“columnDefs”:[{
“目标”:0,
“可搜索”:false,
“orderable”:false,
'className':'dt body center',
“呈现”:函数(数据、类型、完整、元){
如果(数据==“禁用”){
返回“”;
}否则{
返回“”;
}
}
}],
订单:[],
});
});