如何使用jQuery Datatables插件

时间:2015-09-24 13:10:23

标签: checkbox binding datatables

我正在使用jQuery DataTables插件来显示数据。这里我有一个带复选框的列,应根据数据库中的值检查或取消选中,即如果db中的值为true复选框,则应选中复选框,如果db的值为false复选框应该取消选中。

这是我到目前为止所尝试的内容。

table = $("#dataTableMenuRole").dataTable({
        "ajax": {
            "url": "@Url.Action("LoadGridView", "MenuSettings")",                
            "method": "POST",
            "dataType": "json",
            "data": function (d) {
                d.roleId = $("#ddlRoles").val()
            }
        },
        columns: [
            { "data": "MenuName" },
            { "data": "CanAdd" }               

        ],            
        "bProcessing": true,
        "aoColumnDefs": [{
            "targets": 1,
            "bSortable": false,
            "mRender": function (data, type, full, meta) {
                return '<input type="checkbox" class="minimal" checked="'+data+'"/>'
            }
        }]
    });

从数据库返回的JSON是

{"data":[{"MenuName":"Roles","CanAdd":true},{"MenuName":"Menu","CanAdd":true},{"MenuName":"ServiceTax","CanAdd":false}]}

1 个答案:

答案 0 :(得分:1)

  

<强>原因

尽管checked中的值已定义data,但您仍会定义"mRender": function (data, type, full, meta) { return '<input type="checkbox" class="minimal"' + (data ? ' checked' : '') + '/>'; } 属性。

  

<强>解

请改用以下代码:

{{1}}
  

<强>样本

请参阅this jsFiddle以获取代码和演示。