gpt4 book ai didi

javascript - 为什么我的 HTML 表在使用 ajax 刷新时会丢失引导数据表属性?

转载 作者:行者123 更新时间:2023-12-01 00:44:42 25 4
gpt4 key购买 nike

我有一个 HTML 表格存储在table.html:

<table id="example" class="table table-striped table-bordered" style="width:100%">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</thead>
<tbody>
<tr>
<td>Tiger Nixon</td>
<td>System Architect</td>
<td>Edinburgh</td>
<td>61</td>
<td>2011/04/25</td>
<td>$320,800</td>
</tr>
</table>

另一个页面包含一个名为“newtable”的div,使用ajax脚本获取table.html的内容,将其插入到名为“newtable”的div中并每5秒刷新一次。该表使用引导数据表,这为我的表添加了搜索框和分页功能:

<body>
<div class="content table-responsive table-full-width newtable">

</div>
</body>

<script>
function table() {
$.ajax({
url: 'table.html',
type: 'get',
success: function(response){
$('.newtable').html(response);
}
});
}

table();
setInterval(table, 5000);

$(document).ready(function() {
$('#example').DataTable();
} );


</script>
</html>

当页面加载时,我的表格工作正常,但是在ajax刷新表格内容后,表格会更新,但是引导数据表功能(搜索栏和分页)消失,并且不会重新出现,除非我自己刷新页面.

如何解决这个问题?

最佳答案

当您调用$('#example').DataTable()时,它会修改表的内容以添加所有功能。但是,由于您的 ajax 调用正在更改表的内部 HTML ($('.newtable').html(response)),所以所有内容都会丢失。加载新数据后,您可以再次调用 DataTable():

success: function(response){
$('.newtable').html(response);
$('.newtable').DataTable();
}

关于javascript - 为什么我的 HTML 表在使用 ajax 刷新时会丢失引导数据表属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57486550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com