我自己实现了一个动态CheckGroup 有点问题 请指点一下

本文探讨了Ext.form.DynamicCheckboxGroup组件在使用JsonStore异步加载数据时遇到的问题,即如何实现数据的同步加载或将数据加载过程融入到CheckboxGroup中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ext.form.DynamicCheckboxGroup=Ext.extend(Ext.form.CheckboxGroup,{
/**
* 显示列数
*/
columns:3,
/**
* json数据地址
*/
url:'',
fields:[],
root:'',
labelFiled:'label',
valueFiled:'value',
onRender:function(ct, position){
alert(this.url);
var items=[];
if(!this.items){
var json=new Ext.data.JsonStore({
autoDestroy: true,
proxy:new Ext.data.HttpProxy({
url:this.url,
method: 'GET'
}),
root:this.root,
fields:this.fields
});
var ss = json.load({
params: {start:0,limit:20},
callback: function(records, options, success){
Ext.Msg.alert('info', '加载完毕');
alert(json.getTotalCount());
},
scope: json,
add: true
});
for(var i=0;i <json.getTotalCount();i++){
var d=json.getAt(i);
var check = {boxLabel: d.get(this.fields[1]), name: this.name||'mae', inputValue: d.get(this.fields[0])};
items.push(check);
}
this.items=items;
}
Ext.form.DynamicCheckboxGroup.superclass.onRender.call(this, ct, position);
}
});
Ext.reg('dynamicCheckboxGroup',Ext.form.DynamicCheckboxGroup);


代码如上,在执行json.load 的同时代码 继续往下走了导致 for(var i=0;i <json.getTotalCount();i++){ 时 json 数据还没有加载 ,也就是说json的数据是异步加载的,怎么样能叫数据同步加载?或者 再异步加载的时候把数据放在CheckGroup中去?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值