【发布时间】:2017-10-06 10:54:59
【问题描述】:
我正在使用 DataTables jQuery 插件来显示从我的服务中检索到的数据;我有一种情况,我必须在列中输入一个数字并根据该数字进行过滤,该列中的字段可能包含第一个字符作为字母。我想过滤列而不获取带有字母的字段;前任: 如果我的列中有如下值:B123 - C753 - 356 我想输入 3 并返回 只有 356;这是可能的吗?
下面是我的代码:
function filterMySecondColumn() {
$('#my_tbl').DataTable().column(2).search(
$('#My_Val').val(), // my value to be filtered => it is 3 in the example
false,
true
).draw();
}
使用上面的代码:返回结果将是 B123 - C753 - 356 因为它们都包含 3 .
编辑:
下面是我的 Html;当我单击按钮过滤器时,将调用多个过滤功能。其中之一是“filterMySecondColumn”。请注意,我的表格是通过使用 ajax 的服务填充的,但下面是一个模板。
<table id="tblHeaderHomePage" class="tblHeaderHomePage" cellspacing="0" border="0">
<tbody>
<tr id="filter_col1" data-column="0">
<td class="FilterTdTitle">
Column 0
</td>
<td class="FilterTdContent">
<input type="text" autocomplete="off" class="form-control input-sm HomePage_Filter_Input"
id="col0_filter" />
</td>
</tr>
<tr id="filter_col2" data-column="1">
<td class="FilterTdTitle">
Column 1
</td>
<td class="FilterTdContent">
<input type="text" autocomplete="off" class="form-control input-sm HomePage_Filter_Input"
style="width: 85px" id="DateFrom" />
<input type="text" autocomplete="off" class="form-control input-sm HomePage_Filter_Input"
style="width: 85px" id="DateTo" />
</td>
</tr>
<tr id="filter_col3" data-column="2">
<td class="FilterTdTitle">
Column 2
</td>
<td class="FilterTdContent">
<input type="text" class="form-control input-sm HomePage_Filter_Input" id="col2_filter" />
</td>
</tr>
<tr id="filter_col4" data-column="3">
<td class="FilterTdTitle">
Column 3
</td>
<td class="FilterTdContent">
<input type="text" autocomplete="off" class="form-control input-sm HomePage_Filter_Input"
id="col3_filter" />
</td>
</tr>
<tr id="filter_col5" data-column="4">
<td class="FilterTdTitle">
Column 4
</td>
<td class="FilterTdContent">
<select class="BAN_Select_Home" id="Status_Select">
<option value="All">All</option>
</select>
</td>
</tr>
</tbody>
</table>
<div class="BAN_HomePage_Filter_buttons_div">
<input type="button" class="BAN_HomePage_Filter_buttons" onclick="filter()" value="Filter" />
</div>
<table id="My_tbl_init" class="display nowrap" cellspacing="0" width="100%">
<thead>
<tr>
<th>
Column 0
</th>
<th>
Column 1
</th>
<th>
Column 2
</th>
<th>
Column 3
</th>
<th>
Column 3
</th>
</tr>
</thead>
<tbody id="My_tbl">
<tr>
<td>
test1
</td>
<td>
06/10/2017
</td>
<td>
B123
</td>
<td>
Opened
</td>
</tr>
<tr>
<td>
test2
</td>
<td>
06/10/2017
</td>
<td>
C789
</td>
<td>
closed
</td>
</tr>
<tr>
<td>
test3
</td>
<td>
06/10/2017
</td>
<td>
123
</td>
<td>
closed
</td>
</tr>
</tbody>
</table>
【问题讨论】:
-
您也可以发布您的 HTML 吗?
-
所以您想检查第 2 列的值并获取只有数字的值?
-
是的,这正是我的问题
-
立即查看答案
标签: jquery filter datatable datatables