【发布时间】:2014-08-30 18:35:32
【问题描述】:
我正在使用 jquery datatables 1.10 并尝试搜索和过滤表。我想使用一个搜索两列的搜索文本框和一个复选框来过滤第三列的结果。这是我的数据表:
var url = '@Url.Action("SupportClass1Search", "SupportClass1")';
$('#SupportClass1DataTable').DataTable({
"serverSide": true,
"processing": true,
"ajax": url,
"ordering": true,
"dom": '<"top"prl<"clear">>t<"bottom">pi<"clear">',
"pageLength": 10,
"autoWidth": false,
"columns": [
{ // create a link column using the value of the column as the link text
"data": "SupportClass1Id",
"width": "20%",
"render": function (oObj) { return "<a href='#' onclick='editItem(\"" + oObj + "\")'>" + oObj + "</a>"; },
},
{ "data": "SupportClass1Name", "sWidth": "70%" },
{ // convert boolean values to Yes/No
"data": "Active",
"width": "7%",
"render": function (data, type, full) {
if (data == true)
{ return 'Yes'; }
else
{ return 'No'; }
}
}
]
})
我想根据复选框值过滤第三列(活动)。下面的 JS 可以过滤表格,但是当我输入“是”或“否”时,它没有选择 Active 列:
// use an outside search input
oTable = $('#SupportClass1DataTable').DataTable();
$('#btnSearch').click(function () {
oTable.search($('#txtSearch').val()).draw();
})
另外,我更喜欢单独搜索 Active 列,有点像这样:
oTable
.column(2).search('Yes')
.columns([0,1]).search($('#txtSearch').val())
.draw();
但这不起作用。任何帮助表示赞赏
【问题讨论】:
-
你可以检查我的 yadcf 过滤器的数据表,它有 9 种不同的过滤器类型与其他第三方插件集成yadcf-showcase.appspot.comgithub.com/vedmack/yadcf
标签: jquery search datatables