【发布时间】:2019-02-28 02:26:40
【问题描述】:
我想在 Action 列中添加一个按钮,但我无法输入 data-activateUser= item["AspNetUserId"] 的值。我正在使用插件 DataTables 顺便说一句。
我的桌子
数据源
$.getJSON("/Account/InactiveAccounts").then(function (items) {
var item = items;
console.log(item["UserAccounts"]);
$('#inactive-accounts').DataTable({
columnDefs: [{ targets: 'no-sort', orderable: false }],
data: item["UserAccounts"],
"processing": true,
columns: [
{ data: "Username" },
{ data: "Password" },
{ data: "Email" },
{
data: function () {
return `<button onclick="clickDeactivateUser(this)" class="btn btn-danger btn-sm" data-activateUser=`+ item["AspNetUserId"] +`>Activate</button>
`;
}
}
]
});
JSON 数据
【问题讨论】:
-
您的按钮是成功创建还是没有显示?我认为您需要使用
render函数而不是直接将数据分配给data属性;见here添加按钮列。 -
创建成功
-
但是当我尝试从按钮获取
data-activateUser时,它给了我未定义的错误 -
您是否在某处使用了
$(this).data('activateUser')并返回未定义?您是否无法将属性放入按钮元素中,或者在渲染后从按钮中存在的该属性中获取值? -
@LouysPatriceBessette 谢谢先生。未定义的错误消失了,但似乎 item["AspNetUserId"] 为空
标签: javascript jquery json datatable