jquery datatables添加带有ajax服务器端响应的复选框

时间:2010-06-18 10:06:27

标签: jquery asp.net asp.net-mvc datatables

我正在使用C#ASP .NET MVC和ajax调用。我能够获得表格的显示以及所有功能。

但是,我不明白如何添加复选框和按钮。我也尝试过dom-checkbox,但无法让它工作。

感谢任何帮助。

我的代码如下所示:

$(document).ready(function () {

$('#personTable').dataTable({
            "bJQueryUI": true,
            "sPaginationType": "full_numbers",
            "bProcessing": true,
            "bServerSide": true,
            "sAjaxSource": "/Home/GetCustomData",
            "aoColumns": [
                         { "sSortDataType": "dom-checkbox", "sTitle": "Select", 
                                     sName": "" },
                         { "sName": "ID", "sTitle": "ID" },
             { "sName": "FirstName", "sTitle": "First Name" },
             { "sName": "Email", "sTitle": "Email"}]
        });
    });

我的Html是: [table border="1" id="personTable" class="display"] [/table]

3 个答案:

答案 0 :(得分:3)

如果您不想按照Lukasz Dziedzia's answer中的描述在json响应中返回html,则可以在客户端覆盖fnRowCallback函数,在显示之前在行中插入复选框。

答案 1 :(得分:0)

您只需在回复中返回复选框html代码即可。 在你的json响应中添加如下内容:

...
"aaData":[
[
...
    "<input type=\"checkbox\" />",
...
]

(您也可以使用html作为此列的类型,但可能会对具有复选框的列禁用排序和其他类似功能,因此这根本不会产生任何影响。)

答案 2 :(得分:0)

ColumnDefs:[
            { 'targets': [0],
              'render': function (data, type, full, meta)
                        {
                          return '<input type="checkbox" name="id[]" value="' + 
                          $('<div/>').text(data).html() + '">';
                        }
             }
           ]