Javascript 使用ajax servlet调用返回的json更新datatable时出错

Javascript 使用ajax servlet调用返回的json更新datatable时出错,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当我尝试使用datatable加载我的表时,我得到了这个eror。。。DataTables警告:表id=示例-无法重新初始化DataTable。有关此错误的详细信息,请参阅 下面是我对servlet的jquery调用 函数获取客户端(id){ $('document').ready(函数(){ $('#示例')。数据表({ “处理”:对, “服务器端”:正确, “ajax”:{ “url”:“/仪表板/FetchClient”, “数据类型”:“json”, “数据”:{alertId:id}

当我尝试使用datatable加载我的表时,我得到了这个eror。。。DataTables警告:表id=示例-无法重新初始化DataTable。有关此错误的详细信息,请参阅

下面是我对servlet的jquery调用

函数获取客户端(id){
$('document').ready(函数(){
$('#示例')。数据表({
“处理”:对,
“服务器端”:正确,
“ajax”:{
“url”:“/仪表板/FetchClient”,
“数据类型”:“json”,
“数据”:{alertId:id},
“类型”:“职位”
},
“栏目”:[
{“数据”:“obj.clientName”},
{“data”:“obj.AliasName”},
{“数据”:“对象状态”},
{“数据”:“对象时间”},
{“数据”:“目标日期”}
]
});
});
}
var表;//全局变量,也可以跳过此语句
函数获取客户端(id){
if(table){table.destroy();}//destroy if已经初始化
table=$(“#示例”).dataTable({
“处理”:对,
“服务器端”:正确,
“ajax”:{
“url”:“/仪表板/FetchClient”,
“数据类型”:“json”,
“数据”:{alertId:id},
“类型”:“职位”
},
“栏目”:[
{“数据”:“obj.clientName”},
{“data”:“obj.AliasName”},
{“数据”:“对象状态”},
{“数据”:“对象时间”},
{“数据”:“目标日期”}
]
});

}
它现在可以工作了。。由于json是对象数组,我将json数组对象的名称修改为aaData,将ajax列中的json数组对象名称修改为aoColumns,将列数据修改为mData。。它正在工作。。非常感谢

您确定没有在其他地方初始化数据表吗?是的。。但这在另一个servlet中,两个都是不同的请求。。只在单击某些按钮时才会调用FetchClient方法。。另一个servlet动态搜索数据库并添加一个按钮。两者都使用相同的数据库但不同的表。这里没有servlet的问题。。问题是您多次单击按钮就初始化了datatable。你能简要介绍一下场景/需求吗?显然,每当用户单击按钮时,jquery就会被调用。。很明显,我认为这张桌子是初始化的??!!如何避免这种情况??每当按下按钮时,我需要调用url,表应该根据请求返回的json更新,然后首先销毁旧表。Datatable插件直截了当地说,不要(不能)多次初始化同一个表。在控制台中检查如果您得到响应,您在哪里还有Datatable的javascript代码来处理Datatable,您可以粘贴它吗??我是jquer ajax datatable的初学者,您只在单击按钮时显示表格,确定吗?第一次什么都没有,对吗?只有当您单击按钮时,它才应该显示table?您可以创建一个JSFIDLE,以便我可以看到控制台错误,也可以看到其他代码吗