var store = Ext.create('Ext.data.TreeStore', { 
                   id:"treestore", 
                   proxy: { 
                        type: 'ajax', 
                        url: 'test.dt', 
                        reader: { 
                            type: 'json', 
                            root: 'info' 
                        } 
                   }, 
                   root:{ 
                       expanded: true 
                   } 
                   
               }); 
               
               Ext.create('Ext.tree.Panel', { 
                   title: 'Simple Tree', 
                   width: 200, 
                   height: 150, 
                   store: store, 
                   id:"treePanel", 
                   rootVisible: true, 
                   renderTo:Ext.getBody(), 
                   listeners: { 
                       beforerender:function(){ 
                       }, 
                       load:function(store, operation,options){ 
                       } 
                   } 
               }); 
json数据为{"success":true,"info":{"id":"id1","text":"AAAAAAA","expand":true,"info":[{"id":"id2","text":"BBBBBB"}]}} 我把 reader 里面的 root 改为 info.info 就不显示,不知道什什么原因?

解决方案 »

  1.   

    root 改为 info 显示吗
      

  2.   

    可以, 会把 info.info 里面的数据也加载上去。
      

  3.   

    可能是因为info.info里面是数组  不是json对象
      

  4.   

    如果只用到 info.info 里面的数据,其他数据又不能去掉,该如何写呢?
      

  5.   

    上次搞错啦  给store的值貌似就该是数组  你那样应该可以的啊  root:"info.info"
      

  6.   

    关键就是不行,不知道什么原因,浏览器显示说 info 不能读。
      

  7.   

    这就怪了  我今天还特意试了一下  我这边可以的  root 可以用对象.属性的  还可以数组xxx[i]的形式  或者xxx[i].属性  我都试了  store都能取到值   不知道你这边什么情况   但是 如果实在不行  那你就root:"info"吧  然后再对这个store里面的值操作一下  
      

  8.   

    能不能把你的代码和json数据发来看看?
      

  9.   

        var myQuestionStore = Ext.create("Ext.data.Store", {
    model : 'questionModel',
    pageSize : 10,
    proxy : new Ext.data.HttpProxy({
    type : "ajax",
    url : securedwebroot + 'question/query',
    extraParams : {
    type : '',
    categoryId : '',
    createtimeStart : '',
    createtimeEnd : '',
    keyword : ''
    },
    reader : {
    type : 'json',
    root : 'records[0].choice',
    totalProperty : 'reason'
    }
    })
    });
        
        myQuestionStore.on('load',function(){
         alert(Ext.encode(myQuestionStore.getAt(0).data));
        });这个是json数据
    {"reason":"30","success":true,"records":[{"categoryId":2,"createUser":"新世基操作员D","createTimeStart":null,"createTimeEnd":null,"lastModifyUser":"新世基正管理者","createTime":"2011-09-28 14:26:37","lastModifyTime":"2011-10-26 09:47:27","selectedCount":0,"categoryName":null,"choice":[{"type":10,"version":44,"sequence":1,"orgId":1,"name":"2","id":273},{"type":10,"version":44,"sequence":2,"orgId":1,"name":"3","id":274},{"type":20,"version":22,"sequence":6,"orgId":1,"name":"13","id":689},{"type":10,"version":43,"sequence":3,"orgId":null,"name":"hhh","id":729},{"type":10,"version":43,"sequence":4,"orgId":null,"name":"ff","id":730},{"type":10,"version":43,"sequence":5,"orgId":null,"name":"45","id":731}],"removedChoice":null,"type":10,"level":23,"version":44,"status":1,"orgId":1,"name":"4+3=?","id":277}
    数据比较多  截了一点,,,下面是alert的store值:
    {"id":273,"type":10,"name":"2","level":"","choice":"","createUser":"","categoryId":"","createTime":"","lastModifyUser":"","lastModifyTime":"","isRequired":true}
      

  10.   

    加我好友吧  QQ:459738386   treestore的 好像 要有text属性 和  children属性的