使用jQuery数据表在表中搜索选择框
Search with select box in a table with jQuery DataTables
我有一个列表:
<select name="time">
<option value="">Select time</option>
<option value="AM">AM</option>
<option value="PM">PM</option>
</select>
<table id="delivery">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Time</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>A</td>
<td>AM</td>
</tr>
<tr>
<td>2</td>
<td>B</td>
<td>PM</td>
</tr>
<tr>
<td>3</td>
<td>C</td>
<td>AM</td>
</tr>
</tbody>
</table>
和我的脚本:
$.fn.dataTableExt.afnFiltering.push(
function( oSettings, aData, iDataIndex ) {
//filter on current position which is column 3
colFilterID = 3;
//get our filter element
filterElement = aData[colFilterID] * 1;
//get our filter time from the SELECT drop down in header of column
filterTime = $("select[name='time']").val();
if(filterTime == '') {
return true;
}
if(filterTime == filterElement ) {
return true;
}
});
$("select[name='time']").on('change', function() {
oTable.fnDraw();
});
var table = $('#delivery');
var oTable = table.dataTable();
我无法通过AM
和PM
值的第三列过滤记录。
你的代码有几个问题:
- 列索引为从零开始,因此第三列索引为
2
- 您正在尝试将字符串转换为
aData[colFilterID] * 1
的数字,这将字符串转换为NaN
- 你的代码并不总是返回一个值,如果字符串不匹配,你需要返回
false
。
<解决方案/strong>
$.fn.dataTableExt.afnFiltering.push(
function( oSettings, aData, iDataIndex ) {
//filter on current position which is column 3 (zero-based index is 2)
colFilterID = 2;
//get our filter element
filterElement = aData[colFilterID];
//get our filter time from the SELECT drop down in header of column
filterTime = $("select[name='time']").val();
if(filterTime == '') {
return true;
}
if(filterTime == filterElement) {
return true;
} else {
return false;
}
});
演示strong>
相关文章:
- 正在搜索JavaScript日期选择器滑块
- 在Jquery中选择第一个搜索项而不单击它
- 选择下拉菜单:实现非精确搜索,每个单词都将被不可重复地搜索
- 选择中的搜索框
- select2v4用于实时搜索-可以从下拉列表中选择或提交关键字
- 增加在选择元素HTML中搜索的时间
- 4下拉菜单,在搜索之前根据选择更新每个菜单
- 如何使用javascript/jquery/c#搜索和选择包含特殊字符的文本
- 从日期选择器进行按日搜索
- jQuery过滤器搜索带有多个选择框
- 在引导选择组件中的搜索不起作用,其中数据令牌包含所有数字;4730”;
- jQuery 获取搜索选择器,如果元素不存在
- 单个列搜索(选择输入)在 Shiny 中呈现数据表()
- 带有API.js的语义UI搜索选择下拉菜单-未发生API调用
- 如何通过搜索选择HTML表的行索引
- 使用jQuery数据表在表中搜索选择框
- DataTable—为什么我不能让单个列搜索(选择输入)工作?
- 是否在单击时使语义UI搜索选择下拉滚动到所选项目
- 可搜索选择选项
- 如何添加“输入搜索”选择