通常,我过去通过在
中提供以下代码来初始化数据表$(function () {
$('#keywords-table').DataTable({
"ajax": ({
url: "{{ route('getKeywordsByProductId') }}",
method: "get",
}),
"columns": [
{ "data": "action" },
{ "data": "name" },
]
});
并尝试通过$('#keywords-table').DataTable().ajax.reload();
(从$(function() {});
内部的某些功能重新加载它,并且效果很好。
但是当我尝试从下面的函数重新加载它时,出现以下错误
未捕获的TypeError:$(...)DataTable不是函数。
$(document).on('click', '.edit', function() {
$('#keywords-table').DataTable().ajax.reload();
});
我试图放
$(document).on('click', '.edit', function() {
$('#keywords-table').DataTable().ajax.reload();
});
在$(function() {});
内部,但是错误仍然存在。
让我知道如何解决该问题。
答案 0 :(得分:0)
您需要创建一个变量,该变量保存由DataTable()创建的值。尝试将代码更改为
var myTable= $('#keywords-table').DataTable({
"ajax": ({
url: "{{ route('getKeywordsByProductId') }}",
method: "get",
}),
"columns": [
{ "data": "action" },
{ "data": "name" },
]
});
然后
$(document).on('click', '.edit', function() {
myTable.ajax.reload();
});