dwz ajax分页,DWZ table的原生分页浅谈
最近在項(xiàng)目開發(fā)當(dāng)中很少會(huì)用到DWZ原生的table分頁(yè),往往是使用jqgrid or grid這種第三方數(shù)據(jù)綁定的表格插件,如今在項(xiàng)目中要求了,就必須要使用DWZ自帶的table了
接下來(lái)看一段代碼,我會(huì)給大家詳細(xì)介紹DWZ中table分頁(yè)的使用方式,以下是在MVC中實(shí)現(xiàn)的方式。
?
currentPage="@ViewBag.currentPage">屬性介紹
targetType:綁定方式,DWZ這里提供了"navTab" and "dialog"這兩種方式,顧名思義就是分頁(yè)是在標(biāo)簽頁(yè)上還是彈出層上
totalCount:數(shù)據(jù)總行數(shù)
numPerPage:當(dāng)前頁(yè)數(shù)據(jù)行數(shù)
pageNumShown:總頁(yè)數(shù)
currentPage:當(dāng)前頁(yè)碼
@using (Html.BeginForm("BidPrjList", "TbUnify", null, FormMethod.Post, new { id = "pagerForm" }))
{
}
注意DWZ下分頁(yè)的表單必須加上id="pagerForm"屬性,否則不會(huì)執(zhí)行。DWZ中表格的分頁(yè)實(shí)質(zhì)是將分頁(yè)的方式以表單提交的形式傳遞至后臺(tái),由后臺(tái)接收參數(shù),獲取分頁(yè)信息:例如:
Request.Form["numPerPage"]
獲取分頁(yè)信息表單的值就是你在View中pagerForm表單下定義隱藏文本域的name,在后臺(tái)接收后去請(qǐng)求數(shù)據(jù)源中分頁(yè)后的數(shù)據(jù),再返回至前臺(tái)。
而這里存在一個(gè)小問題:首次進(jìn)入此頁(yè)面時(shí),是無(wú)法觸發(fā)當(dāng)前分頁(yè)的的表單提交事件的,所以在上面我定義了ViewBag.numPerPage動(dòng)態(tài)賦值,每頁(yè)分取多少條數(shù)據(jù),前臺(tái)界面只是將分頁(yè)樣式定義,實(shí)質(zhì)數(shù)據(jù)沒有綁定,所以必須要將前臺(tái)傳遞過來(lái)的分頁(yè)信息作為后臺(tái)數(shù)據(jù)分頁(yè)的依據(jù),這樣前臺(tái)的分頁(yè)才能與數(shù)據(jù)對(duì)接一致,不會(huì)造成錯(cuò)亂,這點(diǎn)要注意。
在實(shí)際項(xiàng)目的開發(fā)當(dāng)中,我們總會(huì)把表格與過濾條件放在一起,DWZ中表格傳入限制條件的方式也很簡(jiǎn)單,如上在分頁(yè)表單上加入需要傳入的隱藏文本域例如:
這樣在后臺(tái)就能夠接受到傳入的過濾條件了。
DWZ 的table分頁(yè)實(shí)質(zhì)是將當(dāng)前標(biāo)簽頁(yè)的數(shù)據(jù)reload,致使標(biāo)簽頁(yè)刷新,若限制條件與分頁(yè)共同使用時(shí),這樣就會(huì)存在一個(gè)問題,頁(yè)面reload后會(huì)使你 的過濾條件丟失,而這里我解決的辦法還是在分頁(yè)的表單中加入隱藏文本域,每次把過濾條件賦值,在后臺(tái)判斷是否為空,是否加入過濾條件,希望大家能夠注意這 點(diǎn)。
最后再說一點(diǎn),在上面介紹了targetType,表示當(dāng)前分頁(yè)的方式與分頁(yè)實(shí)質(zhì)是標(biāo) 簽頁(yè)的刷新,所以如果我們把包含table的View層作為部分頁(yè)用異步去進(jìn)行加載時(shí),就會(huì)發(fā)現(xiàn),DWZ的分頁(yè)控件是不會(huì)顯示的,也就無(wú)法分頁(yè),在上面已 經(jīng)告訴大家每次分頁(yè)是要指定type的,如果使用$.load或者@Html.Partial都是只能加載出第一頁(yè)的數(shù)據(jù),這也是DWZ中存在缺陷的地方吧,畢竟DWZ的興起也是近年,還是存在很多問題與BUG的,尤其是他的table分頁(yè)與數(shù)據(jù)綁定真心不好用,但是總體來(lái)說,DWZ其他組件與樣式還是很不錯(cuò)的。
好了關(guān)于DWZ table分頁(yè)今天就介紹到這里。
總結(jié)
以上是生活随笔為你收集整理的dwz ajax分页,DWZ table的原生分页浅谈的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dwz 表单提交 html,dwz 文件
- 下一篇: dwz框架解读