[英]Datatable YADCF server side filter type
I am using yadcf column filters to a server side DataTables.js request.我正在对服务器端 DataTables.js 请求使用 yadcf 列过滤器。
yadcf.init(table, [
{
column_number: 0,
filter_type: "text",
filter_default_label: "Search",
filter_reset_button_text: false
},
{
column_number: 1,
filter_type: "select",
filter_reset_button_text: false
},
]
Request give me请求给我
columns[X][search][value]
columns[X][search][name]
like this but I want to get column yadcf column attribute filter_type . columns[X][search][name]
像这样,但我想获得列 yadcf 列属性 filter_type 。
This data help to search for contains search or equals search此数据有助于搜索包含搜索或等于搜索
How is it get?它是如何得到的? or change scripts.
或更改脚本。
Version 0.9.3版本 0.9.3
I send mail to Daniel Reznick (yadcf writer)我发送邮件给 Daniel Reznick(yadcf 作家)
Daniel Reznick answers :丹尼尔·雷兹尼克回答:
I think you could achieve it by using some datatables "pre XHR" event / hook in which you can modify the XHR request before its being sent to server, but IMO since this is being initialized only once (when you write your JS code) I guess you can do it "hard coded" on server我认为您可以通过使用一些数据表“pre XHR”事件/钩子来实现它,您可以在其中修改 XHR 请求,然后再将其发送到服务器,但 IMO 因为这仅被初始化一次(当您编写 JS 代码时)我猜你可以在服务器上“硬编码”
My Code like this我的代码是这样的
var table = $("#datalist")
.on('preXhr.dt', function (e, settings, data) {
var yadcf = [];
$('.yadcf-filter').each(function (data) {
input = $(this)
var col = {
"type": input.attr('type'),
"filter_match_mode": input.attr('filter_match_mode'),
"column_number": input.attr('id').replace('yadcf-filter--datalist-', '')
}
yadcf.push(col);
});
data.yadcf = yadcf;
})
.DataTable({
"ajax": {
"url": "/url",
"type": "POST",
"datatype": "json"
},
yadcf.init(table, [
{ column_number: 1, filter_type: "text", filter_default_label: "Contains Search", filter_reset_button_text: false, filter_delay: 500, filter_match_mode:"contains"},
{ column_number: 2, filter_type: "text", filter_default_label: "Exact Search", filter_reset_button_text: false, filter_delay: 500, filter_match_mode: "exact" },
{ column_number: 3, filter_type: "text", filter_default_label: "Starts With Search", filter_reset_button_text: false, filter_delay: 500, filter_match_mode: "startsWith" },
] ]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.