我有一个表,可以在data-controller-name
中动态生成表标识符。这是它在我的页面源代码中的样子:
<table data-controller-name="campaigns_index" cellpadding="0" cellspacing="0" border="0"
class="table table-striped table-bordered table-hover" width="100%"
data-source="/en/campaigns.json">
然后在 JavaScript 中,我想访问该 data-controller-name
值,例如,生成 URL 时的 campaigns_index
:
"stateSaveCallback": function (settings, data) {
$.ajax( {
"url": "/datatables_states/[data-controller-name].json",
"data": data,
"dataType": "json",
"type": "PATCH",
"success": function () {}
} );
}
我需要这个Datatables stateSaveCallback .
到目前为止,它还不起作用,因为 URL 按原样传递,没有更改为 campaigns_index.json
我该如何让它工作? 我想我必须有一些那里的变量可以用来正确生成 url。谢谢!
最佳答案
为您的表提供一个 ID:
<table id="camptable" data-controller-name="campaigns_index" cellpadding="0" cellspacing="0" border="0"
class="table table-striped table-bordered table-hover" width="100%"
data-source="/en/campaigns.json">
然后 ajax 将如下所示:
var camp = $("#camptable").attr('data-controller-name');
"stateSaveCallback": function (settings, data) {
$.ajax( {
"url": "/datatables_states/"+camp+".json",
"data": data,
"dataType": "json",
"type": "PATCH",
"success": function () {}
} );
}
关于JavaScript:在 AJAX 回调 URL 中访问表 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43929231/