jQuery DataTables添加自定义多个搜索条件
效果如下:

一、在前台页面定义输入搜索条件的文本框
<div class="ibox-tools">
<span>年度</span>
@Html.DropDownList("year", (List<SelectListItem>)ViewBag.YearDrop, new { @class = "" })
<span>月度</span>
@Html.DropDownList("month", (List<SelectListItem>)ViewBag.MonthDrop, new { @class = "" })
<span>开始日期</span>
@Html.TextBox("StartTime", null, new { @class = "m-wrap small" })
<span>结束日期</span>
@Html.TextBox("EndTime", null, new { @class = "m-wrap small" }) <span>发文类型</span>
@Html.DropDownList("DTMName", null, new { @class = "m-wrap small" })
<span>关键字</span>
@Html.TextBox("KeyWords", null, new { @class = "m-wrap small" }) <a class="btn btn-primary btn-sm" title='搜索' id="btn_search" href="javascript:void(0)"><i class="fa fa-search"></i>搜索</a>
<a class="btn btn-primary btn-sm" title='发文' href="@Url.Action("Create")"><i class="fa fa-plus"></i>添加</a> <a class="collapse-link">
<i class="fa fa-chevron-up"></i>
</a>
</div>
二、最主要的是js部分
//把公共的设置项都放在这里,就不需要每个页面都设置一遍了,放在jQuery对象上是为了避免污染全局变量
$.dataTablesSettings = {
"aLengthMenu": [10, 25, 50, 100],
"bAutoWidth": false,
"bDeferRender": true,
"bLengthChange": true,
"sAjaxSource": "/ReceivedDoc/AjaxHandler",
"bPaginate": true,
"bServerSide": true,
"bSort": true,
"iDisplayLength": 10,
searching: false,//是否显示搜索框
"aaSorting": [[0, "asc"]], // set first column as a default sort by asc
"bFilter": true,
"aoColumnDefs": [{ // define columns sorting options(by default all columns are sortable extept the first checkbox column)
'bSortable': true,
'aTargets': [0, 8]
}],
"fnServerParams": function (aoData) {
aoData._rand = Math.random();
},
"fnDrawCallback": function () { } dataTable = $(".dataTables-example").dataTable($.dataTablesSettings);
$('#btn_search').click(function () {
//这里重新设置参数
$.dataTablesSettings.fnServerParams = function (aoData) {
aoData._rand = Math.random();
aoData.push(
{ "name": "year", "value": $('#year').val() },
{ "name": "month", "value": $('#month').val() },
{ "name": "StartTime", "value": $('#StartTime').val() },
{ "name": "EndTime", "value": $('#EndTime').val() },
{ "name": "DTMName", "value": $('#DTMName').val() },
{ "name": "KeyWords", "value": $('#KeyWords').val() }
);
}
//搜索就是设置参数,然后销毁datatable重新再建一个
dataTable.fnDestroy(false);
dataTable = $(".dataTables-example").dataTable($.dataTablesSettings);
//搜索后跳转到第一页
dataTable.fnPageChange(0);
});
三、后台就就可以使用类接收参数了,也可以使用HttpContext.Request.QueryString["year"]接收。接收后根据不同的查询条件进行相应的查询。
jQuery DataTables添加自定义多个搜索条件的更多相关文章
- WordPress 后台评论如何自定义搜索条件
大家都知道WordPress 作为一个非常成熟的博客系统,功能可以说是非常强大,几乎整个网站都可以进行定制开发,已经不算是一个博客系统了而应该是一个成熟的开发框架 最近就用WP给客户开发了一个网站,但 ...
- [jQuery]jQuery DataTables插件自定义Ajax分页实现
前言 昨天在博客园的博问上帮一位园友解决了一个问题,我觉得有必要记录一下,万一有人也遇上了呢. 问题描述 园友是做前端的,产品经理要求他使用jQuery DataTables插件显示一个列表,要实现分 ...
- jquery dataTables.min.js API
demo: http://datatables.net/release-datatables/examples/api/select_single_row.html 选择一行http://datata ...
- Jquery DataTables相关示例
一.Jquery-DataTables DataTables 是jquery的一个开源的插件.它具有高度灵活的特性,基于渐进增强的基础,可以为任何表格添加交互.它特性如下: 提供分页,搜索和多列排序: ...
- jquery datatables api (转)
学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/20069 ...
- DataTables ajax + bootstrap 分页/搜索/排序/常见问题
最近学校的网站建设需要,尝试使用了下Jquery dataTables控件,接触过C#的人都知道,C#中也含有一个DataTable,但它和我们今天讨论的东西无关 我使用的是官网最新的DataTabl ...
- 最全的jquery datatables api 使用详解
学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/20069 ...
- jquery datatables api
原文地址 学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/ ...
- jQuery DataTables 使用手册(精简版)
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/5182940.html 前排提醒,这个插件能不用就不用,那么多好的插件等着你,为什么要用它呢?就算用easyui的 ...
随机推荐
- SQL Server中按照条件随机返回数据
需求:查询对应关键字的数据,并随机返回一条. 这时,需要一个SQL的那只方法:NEWID(). 用法: [sql]SELECT TOP 1 * FROM Table WHERE TID = 1 ORD ...
- Chrome扩展之css used 获取网页样式
地址栏输入: chrome://extensions/ 然后获取更多扩展程序,得到css used 复制html节点 最后点击 "css used" 把样式全部复制下来即可 (记住 ...
- HDOJ 3944 DP?
尽量沿着边走距离最短.化减后 C(n+1,k)+ n - k, 预处理阶乘,Lucas定理组合数取模 DP? Time Limit: 10000/3000 MS (Java/Others) Me ...
- 算法笔记_098:蓝桥杯练习 算法提高 盾神与条状项链(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 有一天,盾神捡到了好多好多五颜六色的珠子!他心想这些珠子这么漂亮,可以做成一条项链然后送给他心仪的女生~于是他用其中一些珠子做成了长度为n ...
- recess----3.Controller如何和View关联
上一篇我们讲到,Recess框架里面的controller就是一个典型的MVC框架的controller,它负责处理从浏览器(或其它客户端)过来的request,然后调用引用model里面的方法来进行 ...
- openerp js调用Python类方法
转自:http://blog.csdn.net/kuaileboy1989/article/details/42875497 js调用.py文件中定义的类 形式如下: //创建product.prod ...
- 【DB2】If 'db2' is not a typo you can run the following command to lookup the package that contains the binary: command-not-found db2 bash: db2: command not found
数据库安装以后,db2报错如下: If 'db2' is not a typo you can run the following command to lookup the package that ...
- 05-hibernate注解-多对一单向外键关联
多对一单向外键 1,多方持有一方的引用,比如:多个学生对应一个班级(多对一) 2,@ManyToOne(cascade={CascadeType.ALL}, fetch=FetchType.EAGE ...
- 06-编写Hibernate API编写访问数据库的代码,使用Junit进行测试
用到的注解: @Test:测试方法 @Before:初始化方法. @After:是否资源. 先执行Befere,然后执行Test,最后执行After. 第一步:新建一个Junit目录. 第二步:取名 ...
- PHP中根据IP地址判断所在城市等信息
本篇文章由:http://xinpure.com/php-based-on-information-such-as-the-ip-address-in-your-city/ 获得IP地址 在 PHP ...