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"]
接收。接收後根據不同的查詢條件進行相應的查詢。
相關文章
- github條件搜尋Github
- DataTables自定義分頁條數實現
- jQuery 條件搜尋查詢 實時取值 升降序排序jQuery排序
- jquery 多條件匹配jQuery
- 51_初識搜尋引擎_上機動手實戰多搜尋條件組合查詢
- 直播app原始碼,預設顯示搜尋框 保留搜尋條件APP原始碼
- 為Autodesk Viewer新增自定義工具條View
- JQuery datatables 給表格新增載入中效果jQuery
- jQuery如何實現新增自定義函式jQuery函式
- 【Django】組合條件的搜尋功能實現Django
- 自定義修改系統預設ie搜尋
- jQuery 模糊搜尋jQuery
- jQuery自定義多選下拉框jQuery
- odoo 為可編輯列表檢視欄位搜尋新增查詢過濾條件Odoo
- jQuery Validate新增自定義驗證規則jQuery
- 使用grep搜尋多個字串字串
- layUI Table自定義工具欄和搜尋引數UI
- 手動給docusaurus新增一個搜尋
- 【Jquery】jquery 自定義動畫jQuery動畫
- 直播軟體開發,自定義搜尋欄的圖示樣式和搜尋框
- SOLIDWORKS如何新增自定義標準件庫Solid
- Azure 基礎:自定義 Table storage 查詢條件
- 自定義 Azure Table storage 查詢過濾條件
- 為Autodesk Viewer新增自定義工具條的更好方法View
- jQuery 伸縮搜尋框jQuery
- 使用 Eloquent 輕鬆搜尋多個模型模型
- 【轉】如何基於UISearchController深度自定義搜尋UIUIController
- [教程三] 寫一個搜尋:自定義詞庫;使用 Laravel Scout,Elasticsearch,ik 分詞LaravelElasticsearch分詞
- Jquery datatables 使用方法jQuery
- EMQX 多版本釋出、新增自定義函式功能MQ函式
- 搜尋條件設定為Is Null一定不走索引嗎?Null索引
- Jquery + Bootstrap 實現搜尋框jQueryboot
- SAP MM 自定義條件型別出現在採購資訊記錄的'條件'介面裡 ?型別
- jQuery製作淘寶商城商品列表多條件查詢功能jQuery
- 自定義滾動條
- 自定義進度條
- 小程式搜尋自定義關鍵詞功能關閉意欲何為?
- 我的Google自定義搜尋–電子書/電影/iOS技術GoiOS