[英]datatables sort by column name
很快,在應用排序或搜索時,我需要使用列名而不是列號。 我知道它沒有實現,開發人員多次表示他將在下一個版本中支持它,但我現在正在考慮。 我正在使用服務器端分頁,所以我使用的是 ajax.data。 我只需向數據表發送的 d.order[0] object 添加新值。 這是我的偽:
vat table = $('#foo').DataTable({
"processing": true,
"serverSide": true,
"ajax": {
"url": uri_api,
"method": "POST",
"data": function(d) {
if len(table.columns(0).data.tfoot.placeholder)>0 than d.order[0]['col_name']='col0name'
if len(table.columns(1).data.tfoot.placeholder)>0 than d.order[1]['col_name']='col1name'
return json.stringify(d);
}
"columns": [
{ "data": "bar" },
{ "data": "baz" }
]
});
這是純偽代碼,我不知道如何編碼。 還有純js。 如果在 ajax 部分我使用 $(this) 它使用整個 jquery 庫。 有什么提示嗎?
非常感謝 andrewjames,我解決了我的問題,並且工作速度也非常快:根據他的提示,我搜索了“帶有 ajax 數據的數據表列名稱”,我找到了這個鏈接: Using column names with DataTables with AJAX data source基本上我沒有遵循帶有綠旗的解決方案,該解決方案對我不起作用。 我使用了 ahmeti 答案,我添加了以下幾行:
fnServerParams: function(data) {
data['order'].forEach(function(items, index) {
data['order'][index]['column_name'] = data['columns'][items.column]['data'];
});
},
問候。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.