JQueryMiniUI按照時(shí)間進(jìn)行查詢的實(shí)現(xiàn)方法
考核的事情已經(jīng)變成了上一年了,當(dāng)時(shí)要做一個(gè)圖書管理系統(tǒng),但是當(dāng)時(shí)因?yàn)樵诎凑諘r(shí)間進(jìn)行搜索的時(shí)候,無法將前臺的數(shù)據(jù)傳遞到后臺,所以失去了一部分,現(xiàn)在重看,其實(shí)也不過爾爾,反而然我有一種只是當(dāng)時(shí)枉然的意味。好了,那么如何將前臺的時(shí)間數(shù)據(jù)傳遞到后臺,其實(shí)如果是普通的傳遞倒也是無所謂的,因?yàn)橛刑厥獾墓δ苁窃谒阉鞯臅r(shí)候?qū)崿F(xiàn)
所以要在加載頁面的時(shí)候傳遞數(shù)據(jù),jQuery-MINI UI如何實(shí)現(xiàn):
其實(shí)我們要要做的事情是將數(shù)據(jù)顯示到表格中,那么我們就要看一開始是如何實(shí)現(xiàn)的:
前臺千篇一律如此:
<div id="datagrid1" class="mini-datagrid" style="width: 1000px; height: 280px;" url="../index?method=listAll" idField="id" multiSelect="true" sizeList="[5,10,15]" pageSize="10" > <div property="columns"> <div type="checkcolumn"></div> <div type="indexcolumn">序號</div> <div field="bookGuid" width="60" headerAlign="center" allowSort="true">圖書編號</div> <div field="bookName" width="60" headerAlign="center" allowSort="true">圖書名稱</div> <div field="bookType" class="mini-combobox" width="60" renderer="onTypeRenderer">圖書類別</div> <div field="suitable" width="60" renderer="onSuitRenderer">適合人群</div> <div field="buyDate" width="150" headerAlign="center" dateFormat="yyyy-MM-dd HH:mm:ss" allowSort="true">入庫日期</div> <div field="count" width="60" style="color:red">借閱次數(shù)</div> <div field="remark" width="60" style="color:red">備注</div> <div name="action" width="120" headerAlign="center" align="center" renderer="onActionRenderer" cellStyle="padding:0;">操作</div> </div> </div>
上面是我們的表格顯示的內(nèi)容,mini-ui在頁面進(jìn)行加載的時(shí)候就會(huì)初始化表格所以說在div中我們有一個(gè)url屬性,也就是告訴我們數(shù)據(jù)的來源
url="../index?method=listAll"
在頁面進(jìn)行加載的時(shí)候回調(diào)用listAll這個(gè)方法,我們進(jìn)行搜索的時(shí)候也會(huì)去調(diào)用這個(gè)方法,但是我們會(huì)傳遞數(shù)據(jù)到后臺
那么在js重我們該如何編寫,首先我們來看看不需要傳遞數(shù)據(jù)到到后臺,怎樣來加載這個(gè)表格
var grid = mini.get("datagrid1"); grid.load();
那么我們在點(diǎn)擊搜索的時(shí)候,是不是要進(jìn)行傳遞數(shù)據(jù)到后臺:
function search() { var type1 = mini.get("type1").getValue(); var date1=mini.get("date1").getValue(); var timestamp = Date.parse(date1); grid.load({ type1:type1, timestmp:timestamp }); }
按照上面我們就可以在后臺的listAll中對接收到的數(shù)據(jù)進(jìn)行判斷,然后顯示對應(yīng)的數(shù)據(jù)
這個(gè)地方有一個(gè)特點(diǎn)時(shí)間的傳遞并不是按照yyyy-MM-dd這種格式,而是利用時(shí)間戳傳遞到后臺,也就是說傳遞的是一個(gè)long類型是數(shù)據(jù),我們來看一看后臺是怎樣進(jìn)行接收的
public void listAll(HttpServletRequest request, HttpServletResponse response) throws Exception{ String type=request.getParameter("type1"); String lstr=request.getParameter("timestmp"); long time=0; if(lstr!=null && isNumeric(lstr)){ time=Long.parseLong(lstr); } Date date1=new Date(); date1.setTime(time); Date date2=new Date(); date2.setTime(time+24*60*60*1000); SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); String sql="select * from bookinfo"; if(type!= null && type.length()>0 && time==0) { sql="select * from bookinfo where booktype="+Integer.parseInt(type); } else if(time!=0 && type.length()==0) { sql ="select * from bookinfo where buydate between \""+ sdf.format(date1) +"\" and \""+sdf.format(date2)+"\""; } else if(time!=0 && type.length()>0) { sql ="select * from bookinfo where booktype="+Integer.parseInt(type)+" and buydate between \""+ sdf.format(date1) +"\" and \""+sdf.format(date2)+"\""; } else { sql ="select * from bookinfo"; } System.out.println(sql); //要知道的是聯(lián)合查詢中需要得到的List也是顯示出來的 List list=mdao.getList(sql); //實(shí)現(xiàn)的是分頁 int pageSize=Integer.parseInt(request.getParameter("pageSize")); int pageIndex=Integer.parseInt(request.getParameter("pageIndex")); List sub_list=new ArrayList<>(); int start=pageIndex*pageSize; for(int i=start;i<list.size() && i<start+pageSize;i++) { sub_list.add(list.get(i)); } String json=JsonUtil.listToJson(sub_list, "yyyy-MM-dd hh:mm:ss"); System.out.println(json); json=JsonData.modifyJson(json); json=json.replaceFirst("null", list.size()+""); response.getWriter().write(json); }
然后在后臺將時(shí)間戳轉(zhuǎn)換成為一定的格式,我們就可以在數(shù)據(jù)庫中戶進(jìn)行搜索了,還有的是sql語句中時(shí)間兩邊是要加上雙引號的。
總之,我們利用JQuerymini-ui在進(jìn)行數(shù)據(jù)時(shí)間數(shù)據(jù)傳遞的時(shí)候,如果僅僅傳遞一個(gè)時(shí)間,那么時(shí)間的格式并不是我們想要的那么滿意,而且在后臺我們要進(jìn)行各種各樣的判斷,現(xiàn)在我們傳遞時(shí)間戳?xí)p少一些判斷,并且時(shí)間的格式也可以很容易的進(jìn)行轉(zhuǎn)換。
以上這篇JQueryMiniUI按照時(shí)間進(jìn)行查詢的實(shí)現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
jquery EasyUI的formatter格式化函數(shù)代碼
以下實(shí)例格式化數(shù)據(jù)表格中的一列。如果金額小于20時(shí)使用自定義的格式器將文本變成紅色。2011-01-01用JQuery實(shí)現(xiàn)全選與取消的兩種簡單方法
本篇文章主要是對JQuery實(shí)現(xiàn)全選與取消的兩種簡單方法進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02jquery easyui datagrid實(shí)現(xiàn)增加,修改,刪除方法總結(jié)
這篇文章主要介紹了jquery easyui datagrid實(shí)現(xiàn)增加,修改,刪除方法,結(jié)合實(shí)例形式分析了jquery easyui datagrid結(jié)合asp.net實(shí)現(xiàn)數(shù)據(jù)的增刪改等操作的步驟與相關(guān)技巧,需要的朋友可以參考下2016-05-05基于EasyUI的基礎(chǔ)之上實(shí)現(xiàn)樹形功能菜單
這篇文章主要介紹了基于EasyUI的基礎(chǔ)之上實(shí)現(xiàn)樹形功能菜單,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-06-06input 輸入框獲得/失去焦點(diǎn)時(shí)隱藏/顯示文字(jquery版)
input輸入框在獲得或失去焦點(diǎn)時(shí)隱藏或顯示文字,這樣的焦點(diǎn)效果想必很多朋友在填寫form表格的時(shí)候都曾見識過吧,本文使用jquery實(shí)現(xiàn)以下,感興趣的朋友可以參考下哈2013-04-04jQuery選擇器中含有空格的使用示例及注意事項(xiàng)
選擇器中的空格是不容忽視的,多一個(gè)空格或少一個(gè)空格也許得到的結(jié)果會(huì)截然不同的,下面以一個(gè)示例為大家詳細(xì)介紹下到底有什么不同,感興趣的朋友額可以參考下2013-08-08淺談jquery選擇器 :first與:first-child的區(qū)別
下面小編就為大家?guī)硪黄獪\談jquery選擇器 :first與:first-child的區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-11-11