如何使用AJAX刷新JS数据表
我使用AJAX加载(并随后刷新)JS数据表(v1.10.0)。我认为这样做不恰当,因为虽然可以加载初始表,但后续的AJAX请求不会更新表 我尝试了.clear()、.draw()和.rows.add()JS Datatables方法的各种组合,但似乎都不起作用 jquery代码如下:如何使用AJAX刷新JS数据表,ajax,datatables,jquery-datatables,Ajax,Datatables,Jquery Datatables,我使用AJAX加载(并随后刷新)JS数据表(v1.10.0)。我认为这样做不恰当,因为虽然可以加载初始表,但后续的AJAX请求不会更新表 我尝试了.clear()、.draw()和.rows.add()JS Datatables方法的各种组合,但似乎都不起作用 jquery代码如下: $(document).ready(function() { $('#results').html('<table id="table-output" class="display" cellspa
$(document).ready(function() {
$('#results').html('<table id="table-output" class="display" cellspacing="0" width="100%"></table>');
var table_config = {
"bDestroy": true,
"paging": false,
"language": {
"zeroRecords": "No results found",
"processing": "<div align='center'><img src='/static/ajax-loader.gif'></div>",
"loadingRecords": "<div align='center'><img src='/static/ajax-loader.gif'></div>"
}
};
$("form").submit(function(e) {
e.preventDefault();
var form_data = JSON.stringify($(this).serializeArray());
$.ajax({
type: 'POST',
url: /the_url,
data: form_data,
contentType: 'application/json',
dataType: 'json',
success: function(response) {
table_config.data = response.data;
table_config.columns = response.columns;
$('#table-output').dataTable(table_config);
}
});
});
});
$(文档).ready(函数(){
$('#results').html('');
变量表配置={
是的,
“分页”:false,
“语言”:{
“zeroRecords”:“未找到任何结果”,
“处理”:“,
“加载记录”:”
}
};
$(“表格”)。提交(功能(e){
e、 预防默认值();
var form_data=JSON.stringify($(this.serializeArray());
$.ajax({
键入:“POST”,
url:\u url,
数据:表格数据,
contentType:'应用程序/json',
数据类型:“json”,
成功:功能(响应){
表_config.data=response.data;
表_config.columns=response.columns;
$('#表输出').dataTable(table#config);
}
});
});
});
您可以尝试:
var table1 = $('#youtblename').DataTable();
var pathp = "/server_processing_pie.php";
tablel.clear();
tablel.draw();
tablel.ajax.url(pathp).load();
我想出来了。修改成功函数如下所示:
success: function(response) {
$('#results').html('<table id="table-output" class="display" cellspacing="0" width="100%"></table>');
table_config.columns = response.columns;
var table = $('#table-output').DataTable(table_config);
table.clear();
table.rows.add(response.data);
table.draw();
}
成功:功能(响应){
$('#results').html('');
表_config.columns=response.columns;
var table=$('#table output').DataTable(table#config);
表1.clear();
table.rows.add(response.data);
table.draw();
}
您确定AJAX调用成功了吗?是的,在浏览器中检查了响应。这对我不起作用,因为您使用的是datatable的AJAX方法而不是jquery(这是一项要求)