jquery - 使用 AJAX 更新部分页面后,DataTables jquery 插件消失
问题描述
我有一个表,我想与DataTables插件一起使用。实际上,它真的很好用,我可以按原样使用所有功能。
不幸的是,我的表位于部分视图中,因为我认为在我的表中执行基本操作(例如删除和编辑)时,使用 AJAX 更新部分视图很巧妙。
现在到这个问题:
我第一次用局部视图加载我的页面时,DataTables 附加并工作。但是,如果我删除或编辑我的实体,导致 AJAX 更新部分视图,该功能就会消失。
我虽然可以解决这个问题,方法是将DataTables()
函数附加到包装我的局部视图的“静态”div,然后找到表类,如下所示:
$(document).ready(function () {
$( "#partialViewWrapper" ).find( ".table" ).DataTable({
paging: false,
info: false
});
});
不幸的是,这不起作用。因此,我想知道如何将 DataTables 附加到我的表中,以便更新我的部分视图不会“分离”插件。
解决方案
您需要在删除/编辑后刷新您的数据表。您可以根据您的要求使用加载/重新加载/绘制。
1.如果您的 ajax 数据 url 相同。然后尝试
yourDataTable.draw();
OR
yourDataTable.ajax.reload();
如果您需要更新 ajax 数据 url。然后尝试
yourDataTable.ajax.url(newUrl).draw(); OR var myParams = yourDataTable.ajax.params(); yourDataTable.ajax.url(newUrl, myParams).load();//if no parameter then pass null
推荐阅读
- git - Git强制推送失败
- php - 如何根据需要将值保存到数据库和/或修改数据库内容?
- db2 - db2 update dbm cfg 失败并出现错误:SQL5133N。指定值:“0”。配置参数名称:“fcm_buffer_size”
- python - Python:缩写形式的“或”
- c# - 从 Blazor 客户端调用 HttpClient.GetJsonAsync 返回(带数据),但随后超时
- linux - Gnu Plot中百分比的位置和大小不正确
- node.js - 如何使用 ReactJS 和 SendGrid 发送电子邮件?
- php - 我可以在 laravel 5.8 中开发具有多个表的单登录表单吗?请建议
- typescript - String() 和 new String() 可能有相同的类型注解 'String'
- python - 在 Django 中为多个查询编写视图的最佳方法?