我对Datatables插件非常陌生,我将它用于我的小项目。我有这样的问题: +我想创建一个表,每行都有一个链接,可以弹出一个模态进行编辑。 目前我的数据表实现如下:
$(document).ready(function () {
$('#dtTable').DataTable({
serverSide: false,
processing: true,
deferRender: true,
ajax: {
type: 'POST',
url: '@Url.Action("GetClasses", "CLASSes")',
dataSrc: ""
},
columns: [
{ data: 'CLASSID' },
{ data: 'CLASSCODE' },
{ data: 'CLASSNAME' },
{
orderable: false,
searchable: false,
render: function (data, type, full, meta) {
debugger;
var data = full.CLASSID;
return '<a href="callModal()">Action</a>';
}
}
]
});
})
问题在于,当我点击动作链接时,模态将出现然后立即消失,将调试器放在渲染部分,看起来这部分调用了两次而且我不知道为什么? 所以请帮我实现这一点,每一行都有弹出模态的链接,点击它时。 非常感谢你们
答案 0 :(得分:3)
jQuery DataTables插件确实多次调用render
:用于数据类型检测,显示,排序等。
使用以下代码生成仅供显示的内容:
render: function (data, type, full, meta) {
if(type === 'display'){
data = '<a href="callModal()">Action</a>';
}
return data;
}
关于模态对话框,很可能代码中的其他地方存在一个问题,使模式对话框消失。