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

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中去?

你可能感兴趣的:(我自己实现了一个动态CheckGroup 有点问题 请指点一下)