擴展easyui.datagrid,添加數(shù)據(jù)loading遮罩效果代碼
更新時間:2010年11月02日 23:33:47 作者:
easyui可以說是輕量級的前端UI框架,更新到1.2.1支持更多的事件,方法和屬性
在使用的過程中,發(fā)現(xiàn)easyui目前還缺少一些小功能或是未開放出來
拿datagrid插件來說,數(shù)據(jù)加載提供了兩種方式遠程和本地數(shù)據(jù)加載,但只有遠程數(shù)據(jù)加載時才會顯示數(shù)據(jù)加載的遮罩層,在數(shù)據(jù)加載完成后隱藏遮罩層;而本地數(shù)據(jù)加載時則不會出現(xiàn)遮罩,這應(yīng)該是考慮到本地數(shù)據(jù)加載的速度很快則沒有使用遮罩的必要
不過呢,在實際的項目開發(fā)過程中使用時,沒有考慮使用url方式加載數(shù)據(jù),則采用了loadData方法來異步加載數(shù)據(jù),這個時候就很有必要顯示遮罩層來提示用戶當(dāng)前正在加載數(shù)據(jù),分析easyui的datagrid代碼,削離出其中遠程數(shù)據(jù)加載時遮罩顯示代碼,并擴展datagrid的方法,代碼如下:
//jquery.datagrid 擴展
(function (){
$.extend($.fn.datagrid.methods, {
//顯示遮罩
loading: function(jq){
return jq.each(function(){
$(this).datagrid("getPager").pagination("loading");
var opts = $(this).datagrid("options");
var wrap = $.data(this,"datagrid").panel;
if(opts.loadMsg)
{
$("<div class=\"datagrid-mask\"></div>").css({display:"block",width:wrap.width(),height:wrap.height()}).appendTo(wrap);
$("<div class=\"datagrid-mask-msg\"></div>").html(opts.loadMsg).appendTo(wrap).css({display:"block",left:(wrap.width()-$("div.datagrid-mask-msg",wrap).outerWidth())/2,top:(wrap.height()-$("div.datagrid-mask-msg",wrap).outerHeight())/2});
}
});
}
,
//隱藏遮罩
loaded: function(jq){
return jq.each(function(){
$(this).datagrid("getPager").pagination("loaded");
var wrap = $.data(this,"datagrid").panel;
wrap.find("div.datagrid-mask-msg").remove();
wrap.find("div.datagrid-mask").remove();
});
}
});
})(jQuery);
使用方法:
$("#dataGrid").datagrid("loadData",(function (){
$("#dataGrid").datagrid("loading");
return [];//[]需要加載的數(shù)據(jù)
})());
在datagrid的事件onLoadSuccess中添加
onLoadSuccess:function (){
$("#dataGrid").datagrid("loaded");
}
writer:追夢客 20101030 office
拿datagrid插件來說,數(shù)據(jù)加載提供了兩種方式遠程和本地數(shù)據(jù)加載,但只有遠程數(shù)據(jù)加載時才會顯示數(shù)據(jù)加載的遮罩層,在數(shù)據(jù)加載完成后隱藏遮罩層;而本地數(shù)據(jù)加載時則不會出現(xiàn)遮罩,這應(yīng)該是考慮到本地數(shù)據(jù)加載的速度很快則沒有使用遮罩的必要
不過呢,在實際的項目開發(fā)過程中使用時,沒有考慮使用url方式加載數(shù)據(jù),則采用了loadData方法來異步加載數(shù)據(jù),這個時候就很有必要顯示遮罩層來提示用戶當(dāng)前正在加載數(shù)據(jù),分析easyui的datagrid代碼,削離出其中遠程數(shù)據(jù)加載時遮罩顯示代碼,并擴展datagrid的方法,代碼如下:
復(fù)制代碼 代碼如下:
//jquery.datagrid 擴展
(function (){
$.extend($.fn.datagrid.methods, {
//顯示遮罩
loading: function(jq){
return jq.each(function(){
$(this).datagrid("getPager").pagination("loading");
var opts = $(this).datagrid("options");
var wrap = $.data(this,"datagrid").panel;
if(opts.loadMsg)
{
$("<div class=\"datagrid-mask\"></div>").css({display:"block",width:wrap.width(),height:wrap.height()}).appendTo(wrap);
$("<div class=\"datagrid-mask-msg\"></div>").html(opts.loadMsg).appendTo(wrap).css({display:"block",left:(wrap.width()-$("div.datagrid-mask-msg",wrap).outerWidth())/2,top:(wrap.height()-$("div.datagrid-mask-msg",wrap).outerHeight())/2});
}
});
}
,
//隱藏遮罩
loaded: function(jq){
return jq.each(function(){
$(this).datagrid("getPager").pagination("loaded");
var wrap = $.data(this,"datagrid").panel;
wrap.find("div.datagrid-mask-msg").remove();
wrap.find("div.datagrid-mask").remove();
});
}
});
})(jQuery);
使用方法:
復(fù)制代碼 代碼如下:
$("#dataGrid").datagrid("loadData",(function (){
$("#dataGrid").datagrid("loading");
return [];//[]需要加載的數(shù)據(jù)
})());
在datagrid的事件onLoadSuccess中添加
復(fù)制代碼 代碼如下:
onLoadSuccess:function (){
$("#dataGrid").datagrid("loaded");
}
writer:追夢客 20101030 office
您可能感興趣的文章:
- jQuery EasyUI API 中文文檔 - DataGrid數(shù)據(jù)表格
- Jquery下EasyUI組件中的DataGrid結(jié)果集清空方法
- jQuery easyui datagrid動態(tài)查詢數(shù)據(jù)實例講解
- jQuery EasyUI datagrid實現(xiàn)本地分頁的方法
- jQuery EasyUI之DataGrid使用實例詳解
- jQuery Easyui DataGrid點擊某個單元格即進入編輯狀態(tài)焦點移開后保存數(shù)據(jù)
- 實現(xiàn)easyui的datagrid導(dǎo)出為excel的示例代碼
- 詳解EasyUi控件中的Datagrid
- jquery Easyui Datagrid實現(xiàn)批量操作(編輯,刪除,添加)
- EasyUI使用DataGrid實現(xiàn)動態(tài)列數(shù)據(jù)綁定
相關(guān)文章
從零開始學(xué)習(xí)jQuery (八) 插播:jQuery實施方案
本篇文章屬于臨時插播, 用于介紹我在本公司的jQuery實施方案.2011-02-02AJAX和jQuery動態(tài)加載數(shù)據(jù)的實現(xiàn)方法
本文給大家介紹使用ajax和jquery動態(tài)加載數(shù)據(jù)的實現(xiàn)方法,使用jQuery可以簡化這個過程。下面通過實例代碼給大家介紹下,需要的的朋友參考下吧2016-12-12Jquery鼠標(biāo)放上去顯示全名的實現(xiàn)方法
下面小編就為大家?guī)硪黄狫query鼠標(biāo)放上去顯示全名的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02基于jQuery的網(wǎng)頁影音播放器jPlayer的基本使用教程
這篇文章主要介紹了基于jQuery的網(wǎng)頁影音播放器jPlayer的基本使用教程,文中的示例主要針對其播放音頻文件的用法,需要的朋友可以參考下2016-03-03