jquery datatable将数据属性绑定到显示的内容

时间:2017-04-06 15:14:11

标签: javascript c# jquery asp.net datatable

我安装了jQuery datatable插件,并且我已经像这样初始化它:

   $('#datatable-responsive2').DataTable({
            //    data: data,
               // deferRender: true,
                "pageLength": 25,
                "bLengthChange": false,
                "processing": true,
                "serverSide": true,
                "filter": false,
                "orderMulti": false,

                "ajax": {
                    "url": "/Administrator/LoadData/",
                    "type": "POST",
                    "datatype":"json"
                },
                "columns": [
                    { "data": "FirstName", "name": "Lela", "autoWidth": true },
                    { "data": "Email", "name": "Email", "autoWidth": true },
                    { "data": "Active", "name": "Status", "autoWidth": true },
                    { "targets": -1, "data": "UserId", "defaultContent": "<button>Click!</button>", "autoWidth": true },
                    { "data": "FirstName", "name": "Full name", "autoWidth": true }

                ]
            });

请注意本专栏:

  { "targets": -1, "data": "UserId", "defaultContent": "<button>Click!</button>", "autoWidth": true }

我已经按照他们的文档介绍了如何在那里呈现HTML元素......但我现在需要的是无法确定如何在数据表中为此HTML元素设置某个特定属性生成...

正如您所见,我已将数据表的数据源设置为UserId,现在我希望每个按钮“Click”都具有值,无论UserId的值是什么......

有人能帮助我吗?

P.S。所以我想在该列中输出一个HTML元素,其结构将是这样的:

<button values="whatever the value of userId is..?">Click me event</button>

1 个答案:

答案 0 :(得分:1)

您需要为列定义render属性,具体如下:

{ 
    "targets": -1, 
    "data": "UserId", 
    "render": function (data, type, full, meta) {
                                return "<button id='"+ data +"'>Click!</button>";
                            }, 
    "autoWidth": true 
}

data属性中包含UserId,可以在render函数中使用。

您可以参考documentationhere