我想创建一个通用函数来初始化我所有的ajax DataTables。
我需要能够识别请求数据的表,以便我的服务器端脚本知道要发回的数据。
我以为我只能将表ID附加到ajax URL,如下所示:
$(document).ready(function() {
$('#example').DataTable({
"ajax": {
"url": "www.example.com/load-" + this.id + ".php"
}
});
});
我认为该网址会解析为“www.example.com/load-example.php”,但由于this.id
未定义(因为$(this).attr('id')
),因此无效。所以我想也许我可以使用单个服务器端脚本并传入一个额外的$ _GET参数,如下所示:
$(document).ready(function() {
$('#example').DataTable({
"ajax": {
url: "www.example.com/load-table.php",
data: function ( d ) {
d.experiment = this.id;
}
}
});
});
由于同样的原因,这也失败了。
以这种方式检索数据时是否可以获取表ID?
答案 0 :(得分:1)
我找到了一个有效的解决方案,但如果有人有更好的方法,请在此处发布您的解决方案。
此解决方案绑定到具有类'数据表'的任何表。
$(document).ready(function() {
$('.data-table').each(function(index) {
var table = this.id;
$(this).DataTable({
"ajax": {
"url": "www.example.com/load-" + table + ".php"
}
});
});
});