欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

EasyUI Pagination 分頁的兩種做法小結(jié)

 更新時(shí)間:2016年07月09日 11:03:27   作者:Luminji  
這篇文章主要介紹了EasyUI Pagination 分頁的兩種做法小結(jié)的相關(guān)資料,需要的朋友可以參考下

EasyUI 的 datagrid 支持服務(wù)器端分頁,但是官方的資料比較少,以下總結(jié)了兩種 datagrid 的服務(wù)器端分頁機(jī)制,一種是datagrid默認(rèn)機(jī)制,另一種是利用 Ajax 獲取數(shù)據(jù)并填充 Datagrid,可根據(jù)情況具體使用。

一:使用 datagrid 默認(rèn)機(jī)制

后臺(tái):

public JsonResult GetQuestionUnit() 
{ 
// easyui datagrid 自身會(huì)通過 post 的形式傳遞 rows and page 
int pageSize = Convert.ToInt32(Request["rows"]); 
int pageNum = Convert.ToInt32(Request["page"]);
var dal = new QsQuestionUnitDal(); 
var questionUnits = dal.GetList("",pageNum -1, pageSize); 
// 返回到前臺(tái)的值必須按照如下的格式包括 total and rows 
var easyUIPages = new Dictionary<string, object>(); 
easyUIPages.Add("total", questionUnits.FirstOrDefault() == null ? 0 : questionUnits.FirstOrDefault().ReqCount); 
easyUIPages.Add("rows", questionUnits);
return Json(easyUIPages, JsonRequestBehavior.AllowGet); 
}

前臺(tái):
(function () {(function () {('#dgd').datagrid({ 
pageNumber: 1, 
//url: "@ViewBag.Domain/Paper/GetQuestionUnit?arg1=xxx", 
columns: [[ 
{ field: 'Id', title: 'id', width: 100 }, 
{ field: 'Name', title: 'name', width: 100 }, 
]], 
pagination: true, 
rownumbers: true,
pageList: [3, 6] 
});
var p = ('#dgd').datagrid('getPager');('#dgd').datagrid('getPager');(p).pagination({ 
beforePageText: '第',//頁數(shù)文本框前顯示的漢字 
afterPageText: '頁 共 {pages} 頁', 
displayMsg: '共{total}條數(shù)據(jù)',
}); 
});

你需要把 ('#dgd').datagrid 方法放置到

$(function () {
});

如果企圖通過其它的 JS 方法來調(diào)用 ('#dgd').datagrid 方法,則不會(huì)得到正確的分頁結(jié)果。

可以看到,上面 JS 代碼中 url 這一行是被注釋掉了。如果我們不需要做別的操作,頁面一加載就打算查詢出數(shù)據(jù),則可以不注釋掉該代碼。但是,往往,有的時(shí)候,url 的參數(shù),如 arg1 的值需要在界面上進(jìn)行某些操作,然后再通過 JS 代碼去得到的,這個(gè)時(shí)候,就應(yīng)該注釋掉 url,而改由在別的地方賦值,如:

var step1Ok = function () {
$('#dgd').datagrid({ 
url: "@ViewBag.Domain/Paper/GetQuestionUnit?arg1=xxx", 
});
};

在上面的代碼中,我們可以假設(shè)是點(diǎn)了界面的某個(gè)按鈕,調(diào)用了 step1Ok 這個(gè)方法后,才會(huì)去 url 查詢數(shù)據(jù),并呈現(xiàn)到 UI 中去。

二:利用 Ajax 獲取數(shù)據(jù)并填充 Datagrid

如果想追求更大的靈活性,我們可以不使用 datagrid 的默認(rèn)機(jī)制,即指定 url 的方式去獲取數(shù)據(jù),而是通過 ajax 來獲取數(shù)據(jù)并填充 datagrid。使用這種方式,仍舊需要把 ('#dgd').datagrid 方法放置到

$(function () {
});

后臺(tái)代碼不變,只不過,點(diǎn)擊某個(gè)按鈕,調(diào)用 step1Ok 這個(gè)方法,變成了:

var step1Ok = function () {
.messager.progress(title:′Pleasewaiting′,msg:′Loadingdata...′,text:′PROCESSING.......′);varp=.messager.progress(title:′Pleasewaiting′,msg:′Loadingdata...′,text:′PROCESSING.......′);varp=('#dgd').datagrid('getPager'); 
$(p).pagination({ 
onSelectPage: function (pageNumber, pageSize) { 
alert('onSelectPage pageNumber:' + pageNumber + ',pageSize:' + pageSize); 
getData(pageNumber, pageSize); 
} 
});
getData(1,3);
};

第一次調(diào)用的時(shí)候,將會(huì)獲取第一頁的3條數(shù)據(jù):

getData(1,3);

然后我們可以看到,同時(shí),我們還為 pagination 的 onSelectPage 事件創(chuàng)建了一個(gè)時(shí)間處理器,這樣,當(dāng)改天頁面的時(shí)候,我們就會(huì)去:

getData(pageNumber, pageSize);

另外,由于繞開了 datagrid 的原有機(jī)制進(jìn)行分頁,我們采用了自己的遮蓋 $.messager.progress,然后在 ajax 的 success 中取消遮蓋就可以了。

getData 方法如下:

var getData = function (page, rows) { 
.ajax({ type: "POST", url: "@ViewBag.Domain/Paper/GetQuestionUnit", data: "page=" + page + "&rows=" + rows, error: function (XMLHttpRequest, textStatus, errorThrown) { alert(textStatus);.ajax({ type: "POST", url: "@ViewBag.Domain/Paper/GetQuestionUnit", data: "page=" + page + "&rows=" + rows, error: function (XMLHttpRequest, textStatus, errorThrown) { alert(textStatus);.messager.progress('close'); 
}, 
success: function (data) { 
//.each(data,function(i,item)//alert(item);//);.each(data,function(i,item)//alert(item);//);.messager.progress('close'); 
$('#dgd').datagrid('loadData', data);
} 
}); 
};

以上所述是小編給大家介紹的EasyUI Pagination 分頁的兩種做法小結(jié)的全部敘述,希望對(duì)大家有所幫助,如果大家想了解更多內(nèi)容敬請(qǐng)關(guān)注腳本之家網(wǎng)站!

相關(guān)文章

  • jquery設(shè)置css樣式的多種方法(總結(jié))

    jquery設(shè)置css樣式的多種方法(總結(jié))

    下面小編就為大家?guī)硪黄猨query設(shè)置css樣式的多種方法(總結(jié))。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-02-02
  • 詳解jQuery 鏈?zhǔn)秸{(diào)用

    詳解jQuery 鏈?zhǔn)秸{(diào)用

    這篇文章主要介紹了jQuery 鏈?zhǔn)秸{(diào)用的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用jQuery,感興趣的朋友可以了解下
    2021-05-05
  • 單擊按鈕發(fā)送驗(yàn)證碼,出現(xiàn)倒計(jì)時(shí)的簡(jiǎn)單實(shí)例

    單擊按鈕發(fā)送驗(yàn)證碼,出現(xiàn)倒計(jì)時(shí)的簡(jiǎn)單實(shí)例

    下面小編就為大家?guī)硪黄獑螕舭粹o發(fā)送驗(yàn)證碼,出現(xiàn)倒計(jì)時(shí)的簡(jiǎn)單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-03-03
  • jQuery bind事件使用詳解

    jQuery bind事件使用詳解

    很久沒有寫東西了,今天在工作中碰見問題才發(fā)現(xiàn)。以后得多逼自己多抽時(shí)間來寫寫自己的東西,也順便和大家分享一下自己在工作中碰見的問題。
    2011-05-05
  • jQuery插件boxScroll實(shí)現(xiàn)圖片輪播特效

    jQuery插件boxScroll實(shí)現(xiàn)圖片輪播特效

    本文給大家分享的是使用jQuery插件Boxscroll來實(shí)現(xiàn)簡(jiǎn)單的圖片輪播特效的代碼,非常簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。
    2015-07-07
  • jquery網(wǎng)頁回到頂部效果(圖標(biāo)漸隱,自寫)

    jquery網(wǎng)頁回到頂部效果(圖標(biāo)漸隱,自寫)

    當(dāng)網(wǎng)頁內(nèi)容草雞多的時(shí)候,用戶就需要有個(gè)按鈕快速回到頂部,于是用js來實(shí)現(xiàn)下,畫布多說,直接上代碼
    2014-06-06
  • js/jquery判斷瀏覽器類型的方法小結(jié)

    js/jquery判斷瀏覽器類型的方法小結(jié)

    有些時(shí)候需要根據(jù)瀏覽器來寫樣式,所以要判斷一下瀏覽器類型,百度了一下,才知道JQuery有個(gè)方法直接判斷,并附上原生的js的判斷方法,分享給大家,有需要的小伙伴可以參考下。
    2015-05-05
  • jqTransform form表單美化插件使用方法

    jqTransform form表單美化插件使用方法

    jQtransForm jQuery表單美化修飾插件,附帶有PHP提交程序,當(dāng)然ASP/ASP/NET/JSP都是同理,這里主要是jQuery美化部分的實(shí)例,美化對(duì)象為文本框、密碼框、文本域、Select下拉框、按鈕等,有了這些示例,美化其它的表單元素應(yīng)該不是大問題。
    2012-07-07
  • JQuery validate插件Remote用法大全

    JQuery validate插件Remote用法大全

    validate是一個(gè)基于Jquery的表單驗(yàn)證插件,利用他的remote可以用來自定義遠(yuǎn)程驗(yàn)證,這篇文章主要介紹了JQuery validate插件Remote用法大全的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • jQuery利用鍵盤上下鍵移動(dòng)表格內(nèi)容

    jQuery利用鍵盤上下鍵移動(dòng)表格內(nèi)容

    這篇文章主要為大家詳細(xì)介紹了jQuery利用鍵盤上下鍵移動(dòng)表格內(nèi)容,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02

最新評(píng)論