亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

ExtJS4如何自動生成控制grid的列顯示、隱藏的checkbox

2019-11-20 20:45:28
字體:
來源:轉載
供稿:網友
由于某種原因,需要做一個控制grid列顯示的checkboxgroup,雖然EXTJS4中的gridpanel自帶列表可以來控制列的顯示隱藏,但是有這樣的需求(需要一目了然)

下面先上圖

 

接著前幾天做的工作,今天上午完成了定制字段,思路是在上面的普通查詢或者高級查詢結束以后,獲得了列的fields,columns等信息,然后交給一個處理函數 makeCustomMadePanel,該函數用來生成checkboxgroup,生成的時候給它加上一個事件,原本以為checkbox會有類似于check的事件,結果API看了看貌似只有個change事件可以用,MD。。

下面貼下自己寫的 makeCustomMadePanel函數。。用來根據grid的列自動生成checkboxgroup(整個grid的標頭內容等信息均從后臺得到,不管后臺發來一個什么表,都能生成一個checkboxgroup來控制列的隱藏顯示)

參數分別是gridpanel在reconfigure的時候用到的fields和columns,期中的var t=grid_a.columnManager.headerCt.items.get(th.itemId);是關鍵。。這句用來獲得grid_a的列信息。。貌似在api中查不到。網上找了幾中方法都不適合。又不想給每個列一個ID。這是在stackoverflow.com/上找到的。。http://stackoverflow.com/questions/20791685/extjs-4-how-do-i-hide-show-grid-columns-on-the-fly
復制代碼 代碼如下:

function makeCustomMadePanel(fields,cl)
{

var x=cusMadePanel.getComponent('custom');
//console.log(cusMadePanel.getComponent('custom'));
for(var i=0;i<fields.length;i++)
{
x.add(
{
xtype : 'checkboxfield',
boxLabel : cl[i].header,
inputValue : fields[i].name,
checked:true,
itemId:i,
name : 'custom',
listeners : {
change : function(th, value, oldValue,eop) {

var t=grid_a.columnManager.headerCt.items.get(th.itemId);
if(t.isVisible()){

t.setVisible(false);
}
else{
t.setVisible(true);
}
//grid_a.columns[3].setVisible(false);
}}

}
);
}
}

在給出customMadePanel
復制代碼 代碼如下:

Ext.define('customMadePanel', {
extend : 'Ext.form.Panel',
title : '定制字段',
collapsible : true,
items : [ {
itemId:'custom',

xtype : 'checkboxgroup',

fieldLabel : '選擇字段',
columns : 6,
items : []


}]
//collapsed:true,
});
var cusMadePanel=new customMadePanel();

我這種做法的不足也很明顯,makeCustomMadePanel函數中的循環生成checkbox組件太耗時了,38個組件足足花了好幾秒。。用戶體驗肯定不好。。

并且目前是在每次查詢完之后都根據查詢的結果生成一遍。。。我再想想好的解決辦法


今天對makeCustomMadePanel做了優化,生成組件的速度與先前相比提升非常明顯!
復制代碼 代碼如下:

function makeCustomMadePanel(fields,cl)

cusMade=1;
var x=cusMadePanel.getComponent('custom');
//console.log(cusMadePanel.getComponent('custom'));
var fie=[];
for(var i=0;i<fields.length;i++)
{
//x.add(
var temp=
{
xtype : 'checkboxfield',
boxLabel : cl[i].header,
//inputValue : fields[i].name,
checked:true,
itemId:i,
name : 'custom',
listeners : {
change : function(th, value, oldValue,eop) {

var t=grid_a.columnManager.headerCt.items.get(th.itemId);
//console.log(t.isVisible());
//console.log('break');
if(t.isVisible()){

t.setVisible(false);
}
else{
t.setVisible(true);
}
//console.log(t.isVisible());
//var t1=grid_a.columnManager.headerCt.items.get(th.itemId);
//console.log(t1);
//grid_a.columns[3].setVisible(false);
}}

};
//console.log(temp);
fie.push(temp);
}
//console.log(fie);
x.add(fie);

思路就是先循環組好需要生成的組件對象,然后一次add,每一次add的開銷非常大,變為一次速度真的提升了很多很多~
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日本精品在线| 日韩欧美在线看| 欧美国产中文字幕| 亚洲国产高清高潮精品美女| 日韩人体视频一二区| 欧美精品久久久久久久久久| 韩曰欧美视频免费观看| 亚洲精品国产拍免费91在线| 久久久精品视频成人| 综合国产在线观看| 国产欧美日韩免费看aⅴ视频| 北条麻妃一区二区三区中文字幕| 在线成人一区二区| 国产亚洲精品一区二区| 91精品视频专区| 亚洲国产成人爱av在线播放| 91精品国产九九九久久久亚洲| 国产一区香蕉久久| 久久久999成人| 成人午夜一级二级三级| 亚洲第一网站男人都懂| 欧美另类极品videosbest最新版本| 26uuu久久噜噜噜噜| 亚洲欧美在线第一页| 国产精品爱啪在线线免费观看| 国产在线播放91| 日韩亚洲成人av在线| 亚洲精品国产精品久久清纯直播| 久久成人亚洲精品| 国产精品美女免费| 欧美寡妇偷汉性猛交| 国产精品日韩久久久久| 欧美激情国内偷拍| 尤物99国产成人精品视频| 久久免费视频这里只有精品| 国产精品老女人精品视频| 成人免费观看网址| 欧美裸体xxxx| 久久精品视频中文字幕| 欧美精品性视频| 亚洲国产精品推荐| 欧美超级免费视 在线| 亚洲人成网站777色婷婷| 69视频在线免费观看| 狠狠躁18三区二区一区| 97精品久久久中文字幕免费| 亚洲一区二区三区成人在线视频精品| 成人美女av在线直播| 麻豆一区二区在线观看| 亚洲精品成a人在线观看| 国语自产精品视频在免费| 日韩av不卡电影| 午夜精品理论片| 91精品国产综合久久香蕉的用户体验| 亚洲国内高清视频| 中文字幕亚洲欧美日韩在线不卡| 欧美人成在线视频| 91免费看视频.| 欧美电影在线观看完整版| 亚洲电影在线看| 波霸ol色综合久久| 久热在线中文字幕色999舞| 久久精品国产免费观看| 神马久久久久久| 日韩国产在线播放| 欧美俄罗斯乱妇| 3344国产精品免费看| 色无极亚洲影院| 国产91在线视频| 九九精品在线播放| 亚洲一区二区日本| 亚洲欧美国产制服动漫| 久久99久久99精品免观看粉嫩| 久久久成人精品| 国产日韩欧美夫妻视频在线观看| 日韩高清有码在线| 国产精品久久久久久亚洲影视| 国产999精品久久久影片官网| 欧美日韩性生活视频| 久久久久久久一区二区三区| 亚洲成人三级在线| 欧美重口另类videos人妖| 久久精品成人动漫| 97国产成人精品视频| 欧美成人一二三| 国模精品系列视频| 国产精品爱久久久久久久| 亚洲网址你懂得| 亚洲精品欧美一区二区三区| 九九热这里只有精品免费看| 午夜免费在线观看精品视频| 亚洲va久久久噜噜噜久久天堂| 亚洲国产欧美在线成人app| 中文字幕日韩电影| 成人高h视频在线| 亚洲精品电影在线观看| 久久夜精品香蕉| 亚洲女成人图区| 91在线播放国产| 日韩在线播放一区| 欧美一级黄色网| 福利一区福利二区微拍刺激| www.久久久久| 日韩欧美在线免费| 九九精品视频在线| 色无极影院亚洲| 亚洲欧洲美洲在线综合| 中文字幕国内精品| 91在线精品视频| 韩剧1988在线观看免费完整版| 成人xvideos免费视频| 亚洲综合中文字幕在线观看| 黑人欧美xxxx| 日韩精品日韩在线观看| 亚洲国产日韩欧美在线动漫| 国产精品偷伦免费视频观看的| 久久亚洲综合国产精品99麻豆精品福利| 国产一区二区三区欧美| 久久久免费观看视频| 69国产精品成人在线播放| 精品人伦一区二区三区蜜桃免费| 欧美日韩国产中文精品字幕自在自线| 欧美在线国产精品| 久久人人爽人人爽人人片亚洲| 亚洲成人在线视频播放| 亚洲精品国精品久久99热一| 久久99精品久久久久久噜噜| 日本免费一区二区三区视频观看| 亚洲第一页中文字幕| 日本欧美精品在线| 久久精品最新地址| 成人国产亚洲精品a区天堂华泰| 久久最新资源网| 欧美日韩国产麻豆| 97超视频免费观看| 国精产品一区一区三区有限在线| 亚洲精品自拍视频| 国产婷婷色综合av蜜臀av| 国产精品一区二区3区| 精品国产成人av| 亚洲自拍高清视频网站| 亚洲美女久久久| 高清日韩电视剧大全免费播放在线观看| 亚洲偷熟乱区亚洲香蕉av| 国产精品激情av电影在线观看| 欧美性xxxxxxxxx| 精品国产乱码久久久久久婷婷| 中文字幕av一区二区三区谷原希美| 日韩人体视频一二区| 久久久久久久久亚洲| 亚洲资源在线看| 亚洲第一页中文字幕| 午夜精品www| 中文字幕亚洲无线码a| 欧美中文字幕在线观看| 国产欧洲精品视频| 亚洲男人的天堂在线播放| 欧美日韩视频免费播放| 欧美激情xxxxx| 欧美国产亚洲视频| 亚洲午夜色婷婷在线| 亚洲国产精品va在线观看黑人| 日韩国产欧美区| 国产91成人在在线播放|