這篇文章將為大家詳細(xì)講解有關(guān)layui使用table的sort排序的方法,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
成都創(chuàng)新互聯(lián)公司響應(yīng)式網(wǎng)站特點(diǎn)就是不管在電腦、平板還是手機(jī)上,H5響應(yīng)式網(wǎng)站都會根據(jù)屏幕尺寸自動調(diào)節(jié)大小、圖片分辨率,并且融入一定的動畫特效,讓網(wǎng)站看起來非常的美觀大方。從網(wǎng)站需求對接到網(wǎng)站制作設(shè)計、從代碼編寫到項(xiàng)目上線運(yùn)維,技術(shù)人員全程跟蹤,快速響應(yīng)先看看目前l(fā)ayui自帶的排序的效果,中文按字典排序這些不是本次討論的重點(diǎn),先看看如果存在整數(shù)負(fù)數(shù)還有0出現(xiàn)的情況
那么是不是調(diào)整一下sort里面的邏輯就可以了讓它對負(fù)數(shù)和0的判斷邏輯對了就好了。這個其實(shí)也不是這次討論的重點(diǎn)。
那么重點(diǎn)是,server排序,實(shí)際上絕大部分的table的排序不會只是單頁面的這樣子簡單的排序,而是把條件傳到后臺讓后臺排序,那么官方給出的一般是監(jiān)聽sort然后reload,把條件傳過去,這些都很ok,邏輯都沒問題。
but實(shí)際得到的效果呢?因?yàn)槟壳皌able沒有區(qū)分前臺排序還是server排序,在接收到數(shù)據(jù)之后再渲染表格的時候判斷到有initSort,那么會再次將數(shù)據(jù)排序,然后顯示,這就存在一個非常嚴(yán)重的問題!
明明server已經(jīng)排好序了,為啥還要js里面再sort一下,更嚴(yán)重的是,能保證sort出來的結(jié)果跟后臺排序的規(guī)則出來的結(jié)果一致么?拿什么保證呢?
看看下面的代碼監(jiān)聽reload的時候然后模擬后臺把數(shù)據(jù)按照負(fù)數(shù)<0<正數(shù)這個規(guī)則返回的data,實(shí)際reload之后是什么樣子吧。
代碼:
效果
可能你會覺得跟前面沒啥區(qū)別呀,排序的時候還是錯了呀,這正是異常的地方。看看我模擬返回的data里面的結(jié)構(gòu)吧
原始的data:
模擬的接口返回的data:
這個返回之后顯然顯示的效果跟實(shí)際數(shù)據(jù)的順序?qū)Σ簧咸?/p>
原因就是上面說的,實(shí)際發(fā)后臺排序的時候到了渲染的時候還是要走一次前臺排序,等于是做了一個畫蛇添足的處理。實(shí)際如果我們定義成server排序返回的數(shù)據(jù)就是要顯示的順序了。
絕對不能再走前端sort一下這個邏輯,不然后臺排序的意義是什么還有如何保證邏輯跟后臺是一致的,一致的話頂多算是一個無用功,但是如果不能保證一致,這個就是一個大事故了。
解決方案:提供用戶一個配置項(xiàng),決定是前臺排序還是server排序。修改如下
需要修改的原始代碼區(qū)域
修改之后的對應(yīng)區(qū)域的代碼:
測試的table在render的時候加入了sortType的配置
最后是sort的監(jiān)聽
最后的效果
關(guān)于layui使用table的sort排序的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
文章標(biāo)題:layui使用table的sort排序的方法-創(chuàng)新互聯(lián)
文章位置:http://www.rwnh.cn/article34/epgse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、網(wǎng)站內(nèi)鏈、微信小程序、響應(yīng)式網(wǎng)站、建站公司、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容