【发布时间】:2021-04-28 13:24:50
【问题描述】:
我正在使用带分页的数据表,并且在我拥有的每一行中 我通过模态弹出窗口加载的编辑功能。
如果我更改页面,dom 会丢失,因此我无法再将编辑功能作为模态弹出窗口打开。
问题: https://datatables.net/faqs/#events
解决方案 https://datatables.net/examples/advanced_init/events_live.html
我都阅读了,但我仍然不知道如何使用我的编辑链接。
点击带有 class dlgTrigger 的链接时,弹出窗口打开。简单的事情,但不是使用这种数据表组合并且没有进一步的 js 知识。
希望有人可以帮助我了解如何在这个数据表 js 中定义链接。
这就是我的表格的样子(举个例子):
<script>
$(document).ready(function() {
$('#syslog').DataTable({
order: [[ 0, "desc" ]],
pageLength: 10,
"lengthMenu": [ [10, 30, 60, 120, -1], [10, 30, 60, 120, "All"] ]
});
});
</script>
表格
<table id="syslog">
<thead><tr><td>Report</td><td>Actions</td></tr></thead>
<tr><td>text123</td>
<td><a href="edit/report.php?id=123" class="dlgTrigger" title="Edit"><li class="fa fa-edit"> </li></a></td></tr>
<tr><td>text456</td>
<td><a href="edit/report.php?id=456" class="dlgTrigger" title="Edit"><li class="fa fa-edit"> </li></a></td></tr>
</table>
对话框
<script>
$(document).ready(function() {
$('A.dlgTrigger').click(function(event) {
event.preventDefault();
dlg = $('<div></div>').append(loading.clone());
dlg
.load($(this).attr('href'), function(response, status, xhr) {
if ( status=="error" ) {
alert("Dialog definition not available ("+xhr.status+" "+xhr.statusText+")");
//dlg.dialog("close");
}
})
.dialog({
title: $(this).attr('title'),
width: 300,
height: 300,
modal: true,
resizable: false,
close: function() {
dlg.empty();
}
});
});});
// ]]></script>
【问题讨论】:
标签: jquery datatables