Layui實現(xiàn)多條件查詢的示例代碼
最近做一個檔案系統(tǒng),發(fā)現(xiàn)字段超多
帶分頁的多條件查詢(分頁需要后端分頁,傳page給后端才可實現(xiàn),前端無法直接實現(xiàn))
當我們點擊搜索按鈕時會篩選出輸入值的相關(guān)數(shù)據(jù),多條件查詢是建立在數(shù)據(jù)之上,數(shù)據(jù)查詢出來后開辟條件在用戶輸入的值不為空的情況下讓查詢出來的數(shù)據(jù)下面的某值等于用戶輸入的值,然后查詢的數(shù)據(jù)返回到視圖再重新加載渲染的表格,查詢出來的數(shù)據(jù)是所篩選的出來的數(shù)據(jù)與用戶輸入的值相關(guān)。

多條件查詢表單
<form class="layui-form" action=""> <div class="layui-inline"> <label class="layui-form-label">年級</label> <div class="layui-input-inline"> <input type="text" id="grade" name="grade" placeholder="請選擇年級" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label">專業(yè)</label> <div class="layui-input-inline"> <select name="majorid" id="majorid"> <option value="">請選擇</option> </select> </div> </div> <div class="layui-inline"> <div class="layui-input-inline"> <button class="layui-btn" id="searchBtn" lay-submit lay-filter="formDemo" data-type="reload" style="margin-left: 15px"> <i class="layui-icon layui-icon-search"></i> 查詢 </button> <button type="reset" class="layui-btn layui-btn-primary">重置</button> </div> </div> </form>
使用年日歷選擇年級,動態(tài)獲取專業(yè)選項
//年級用日歷顯示
var laydate = layui.laydate;
laydate.render({
elem : '#grade', //指定元素
type : 'year'
});
//獲取下拉框?qū)I(yè)
$.ajax({
url : '../../MajorFindAllServlet?deptid=5',
dataType : 'json',
data : {
'state' : 0
}, //查詢狀態(tài)為正常的所有機構(gòu)類型
type : 'post',
success : function(data) {
$.each(data, function(index, item) {
$('#majorid').append(
new Option(item.majorname, item.majorid));// 下拉菜單里添加元素
});
layui.form.render("select");
}
});
所有的js都包含在 … 中,table為數(shù)據(jù)表格,laydata為日歷,form為表單,用到哪一部分就寫上哪一部分,詳情見 Layui官網(wǎng)
layui.use(['table', 'laydate', 'form' ], function() {...}
生成表格
//生成表格
var table = layui.table;
table.render({
elem : '#table',
url : '../../ClassesFindByPageServlet',
toolbar : '#toolbarDemo',
title : '班級表',//導(dǎo)出文件名
page : {
layout:['count','prev','page','next', 'skip']
},//開啟分頁
id : 'tableAll',
where : {
majorid : '',
grade : ''
},
request : {
'limitName' : 'pageSize' //分頁每頁條數(shù)默認字段改為pageSize
},
cellMinWidth : 80, //全局定義常規(guī)單元格的最小寬度,layui 2.2.1 新增
cols : [ [ {
type : 'checkbox',
fixed : 'left'
}, {
field : 'classid',
title : '班級編號'
}, {
field : 'classname',
title : '班級名稱'
}, {
field : 'deptname',
title : '院系名稱'
}, {
field : 'majorname',
title : '專業(yè)名稱'
}, {
field : 'grade',
title : '年級',
sort : true
}, {
fixed : 'right',
title : '操作',
toolbar : '#barDemo'
} ] ]
});
多條件查詢 點擊提交重載表格
//點擊查詢按鈕,重載表格
$('#searchBtn').on('click', function() {
table.reload('tableAll', {
method : 'post',
where : {
grade : $('#grade').val(),
majorid : $('#majorid').val()
},
page : {
curr : 1
}
});
return false;
});
到此這篇關(guān)于Layui實現(xiàn)多條件查詢的示例代碼的文章就介紹到這了,更多相關(guān)Layui 多條件查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
uni-app如何讀取本地json數(shù)據(jù)文件并渲染到頁面上
在做前端開發(fā)的時候,少不了要用一些模擬的json的數(shù)據(jù)來進行測試,這篇文章主要給大家介紹了關(guān)于uni-app如何讀取本地json數(shù)據(jù)文件并渲染到頁面上的相關(guān)資料,需要的朋友可以參考下2022-08-08
深入理解JavaScript中async/await的錯誤處理方式
在現(xiàn)代JavaScript開發(fā)中,異步編程是不可或缺的一部分,async和await是一種強大的異步編程工具,它們使得編寫和維護異步代碼更加容易和清晰,然而,異步操作仍然可能會出現(xiàn)錯誤,本文將深入探討async和await的錯誤處理方式,提供詳細的代碼示例和解釋2023-09-09
支付寶小程序?qū)崿F(xiàn)類似微信多行輸入功能(思路詳解)
這篇文章主要介紹了支付寶小程序?qū)崿F(xiàn)類似微信多行輸入功能,輸入超過 8 行的時候會出現(xiàn)滾動,這樣做的好處就是輸入框不會直接頂?shù)巾撁孀铐敳?支付寶小程序?qū)崿F(xiàn)多行輸入框:使用textarea多行輸入框?qū)崿F(xiàn),感興趣的朋友一起看看吧2024-02-02
JavaScript實現(xiàn)自動對頁面上敏感詞進行屏蔽的方法
這篇文章主要介紹了JavaScript實現(xiàn)自動對頁面上敏感詞進行屏蔽的方法,涉及javascript針對頁面字符串查找及替換的相關(guān)技巧,需要的朋友可以參考下2015-07-07
js中Math之random,round,ceil,floor的用法總結(jié)
本篇文章是對js中Math之random,round,ceil,floor的用法進行了總結(jié)介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12

