Ext4 checkbox 動態載入問題
專案上遇到checkbox動態載入問題,搜尋了下,發現有相應的文章:http://blog.csdn.net/zuoanlove/article/details/7741539,具體如下:
DoctorWorkStation_CommonDoctorAdvice.CreateYZCheckBoxWin = function(store, colnum,title) {
var count = store.getCount();
var myCheckboxItems = [];
for (var i = 0; i < count; i++) {
var boxLabel = store.getAt(i).get("name");
var name = store.getAt(i).get("id");
myCheckboxItems.push({
boxLabel : boxLabel,
name : name
});
}
var myCheckboxGroup = new Ext.form.CheckboxGroup({
xtype : 'checkboxgroup',
itemCls : 'x-check-group-alt',
columns : colnum,
items : myCheckboxItems
});
var form = new Ext.FormPanel({
border : true,
frame : true,
labelAlign : "right",
buttonAlign : 'right',
layout : 'column',
width : 500,
items : [myCheckboxGroup],
buttons : [{
xtype : 'button',
text : '確定',
handler : function() {
var ids = [];
var cbitems = myCheckboxGroup.items;
for (var i = 0; i < cbitems.length; i++) {
if (cbitems.itemAt(i).checked) {
ids.push(cbitems.itemAt(i).name);
}
}
win.destroy();
if (ids.length) {
Ext.Msg.alert("訊息", "選中狀態的id組合字串為:"
+ ids.toString());
}
}
}, {
xtype : 'button',
text : '取消',
handler : function() {
win.destroy();
}
}]
});
var win = new Ext.Window({
modal : true,
layout : 'fit',
title : title,
width : 500,
height : 300,
plain : true,
items : [form]
});
win.show();
}
發現以上程式碼在ext4裡不完全適用。
以下實現修改的一個字串,為1時選中,為0時不選中。
初始化時:
selValue='111111111000011111';
for (var i = 0; i < count; i++) {
var boolValue=selValue.charAt(i)=='1'?true:false;
myCheckboxItems.add({
boxLabel : i+1,
name : 'cb',
inputValue:selValue.charAt(i),
checked:boolValue
});
}
取值時:
var cbitems = myCheckboxGroup.items;
var str='',
for (var i = 0; i < cbitems.length; i++) {
str+=cbitems.items[i].checked==true?'1':'0';
}
}
api如下:
add( Ext.Component[]/Ext.Component... component ) : Ext.Component[]/Ext.Component
Adds Component(s) to this Container.
Description:
Fires the beforeadd event before adding.
The Container's default config values will be applied accordingly (see defaults for details).
Fires the add event after the component has been added.
Notes:
If the Container is already rendered when add is called, it will render the newly added Component into its content area.
If the Container was configured with a size-managing layout manager, the Container will recalculate its internal layout at this time too.
Note that the default layout manager simply renders child Components sequentially into the content area and thereafter performs no sizing.
If adding multiple new child Components, pass them as an array to the add method, so that only one layout recalculation is performed.
tb = new Ext.toolbar.Toolbar({
renderTo: document.body
}); // toolbar is rendered
// add multiple items.
// (defaultType for Toolbar is 'button')
tb.add([{text:'Button 1'}, {text:'Button 2'}]);
To inject components between existing ones, use the insert method.
具體可參見api :
Ext.container.AbstractContainer
相關文章
- 動態頁面資料載入不全的問題
- 【轉載】關於C#中動態載入AppDomain的問題C#APPAI
- drozer模組的編寫及模組動態載入問題研究
- 高德地圖fragment 動態載入地圖 巢狀問題地圖Fragment巢狀
- DLL動態庫動態載入
- 單例項物件動態裝載問題?單例物件
- Mac dylib動態庫載入路徑問題(以OpenCV為例)MacOpenCV
- Asp.net動態載入控制元件的一些問題ASP.NET控制元件
- Android 動態載入技術三個關鍵問題詳解Android
- 解決 Vue 動態生成 el-checkbox 點選無法賦值問題Vue賦值
- vue 動態載入元件Vue元件
- Java動態載入類Java
- ASM無法自動載入磁碟組問題ASM
- 動態載入UserControl
- OrchardCore 如何動態載入模組?
- 使用dlopen載入動態庫
- ListView動態載入資料View
- QLibrary 載入動態庫
- vue 動態載入組建Vue
- goloader - golang動態載入Golang
- 熱更新--動態載入frameworkFramework
- 動態庫載入過程
- 動態載入APK原理分享APK
- 動態載入JS和CSSJSCSS
- 動態載入JS的方法JS
- 動態載入!dom應用!
- python動態載入(三)Python
- 指令碼的動態載入指令碼
- 關於顯示載入動態連結庫模組及解除安裝的問題
- Python爬蟲入門 | 7 分類爬取豆瓣電影,解決動態載入問題Python爬蟲
- 動態invoke的問題?
- AndroidJava動態修改CheckBox樣式AndroidJava
- tp5.0 的 模組配置自動載入問題
- ASP.net中動態載入控制元件時一些問題的總結ASP.NET控制元件
- 關於JQuery操作checkbox問題jQuery
- js動態載入實現提高網頁載入速度JS網頁
- EasyUI Jquery 動態載入樹,點選節點載入UIjQuery
- echarts遷移圖動態載入Echarts