基于StartsWith Not Contains的JQuery数据表搜索
我正在使用Jquery数据表处理MVC3。每个网格都由搜索函数组成,它通过匹配输入字符(比如,使用contains)来搜索内容。但我需要的结果应该是使用StartsWith 我需要这样的东西 网格记录基于StartsWith Not Contains的JQuery数据表搜索,jquery,asp.net-mvc-3,datatable,Jquery,Asp.net Mvc 3,Datatable,我正在使用Jquery数据表处理MVC3。每个网格都由搜索函数组成,它通过匹配输入字符(比如,使用contains)来搜索内容。但我需要的结果应该是使用StartsWith 我需要这样的东西 网格记录 1. Pipefitting Annotated instructor guide level 1 CD-ROM 2. Adobe Photoshop CS4 for photographers A professional image editors 如果我输入字符“a”,结果应该是第二行(通
1. Pipefitting Annotated instructor guide level 1 CD-ROM
2. Adobe Photoshop CS4 for photographers A professional image editors
如果我输入字符“a”,结果应该是第二行(通过搜索字符串中单词的起始字符)。或者如果我输入“g”,那么结果应该是第一条记录
我在谷歌上搜索了很多,但没有找到符合我要求的东西。请告诉我怎么做
查看代码
$(document).ready(function () {
$('#CollectionTable').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers"}).makeEditable({
"aoColumns": [
null, null
]
});
});
fnFilter允许您使用正则表达式筛选表:
$(document).ready(function() {
var oTable = $('#example').dataTable();
// Sometime later - filter...
oTable.fnFilter( '^' + yourTerm, null, true, true, true, true);
} );
完整参考:对于datatables 1.10.9,搜索以要输入的参数开头的值非常简单 我自己做了一些研究,但是datatables API有内置的列过滤器来完成您正在寻找的功能
var table = $('#table_id').DataTable();
$('#name').on( 'keyup', function () {
table
.columns( 0 ) // 0 based column
.search( "^"+this.value, true, true, true )
.draw();
} );
表是datatable对象
#name是我传递参数的输入框
您可以定义感兴趣的列,然后根据参数在搜索中传入正则表达式查询
您可以在官方文档DataTables文档中找到上述示例,其中说明正则表达式和智能搜索选项可能相互冲突,因此您可能不希望同时启用这两个选项。