本人以前没用过EXTjs 现在有个需求要做 ,求大虾指导!首先直接分页查出第一层产品。
然后在有子产品的项目前面加上加号标示有子产品。在点加号的时间 用EXTjs发AJAX请求,动态的查出子产品并追加在父产品下面。求大虾指点EXTjs的写法。最好给个demo...不胜感激!

解决方案 »

  1.   

    发AJAX请求返回的产品集合我用JSON封装。如何把JSON中的子产品加入到动态的表格中?
      

  2.   

    Extjs 里面不是有tree可以用?
      

  3.   

    Ext.tree.TreePanel提供了树形结构数据的树形UI展示。
      

  4.   

    大虾,关键是我没有用过EXTjs 
      

  5.   

    在 API中查询 XTemplate
    里面有模板例子 
    以下仅供参考 this.expander.on('expand',function(expander,r,body,rowIndex){

    var publishData = r.data.publishList;

     var data = {
    nodeId : '',
    nodeName : '',
    contentId : '',
    contentName : '',
    nodePath : '',
    cpName : '',
    publishList : publishData
    };

              var tpl=new Ext.XTemplate(
    '<table border="0" frame=void style="width: 728px;" cellspacing="0">',
    '<tpl for="publishList">',
    '<tpl if="xindex % 2 == 0">',
            '<tr bgcolor="#EEEEEE"><td width="29"></td><td width="55"><fmt:message key="publishUrl.nodeId"/> : </td><td width="100">{nodeId}</td><td width="55"><fmt:message key="publishUrl.nodeName"/> : </td><td width="100">{nodeName}</td></tr>',
    '<tr bgcolor="#EEEEEE"><td width="29"></td><td width="55"><fmt:message key="publishUrl.contentId"/> : </td><td width="100">{contentId}</td><td width="55"><fmt:message key="publishUrl.contentName"/> : </td><td width="100">{contentName}</td></tr>',
    '<tr bgcolor="#EEEEEE"><td width="29"></td><td width="55"><fmt:message key="publishUrl.nodePath"/> : </td><td width="100">{nodePath}</td><td width="55"><fmt:message key="publishUrl.cpName"/> : </td><td width="100">{cpName}</td></tr>',
    '</tpl>',
    '<tpl if="xindex % 2 != 0">',
            '<tr bgcolor="white"><td width="29"></td><td width="55"><fmt:message key="publishUrl.nodeId"/> : </td><td width="100">{nodeId}</td><td width="55"><fmt:message key="publishUrl.nodeName"/> : </td><td width="100">{nodeName}</td></tr>',
    '<tpl if="contentId != \'\'">',
            '<tr bgcolor="white"><td width="29"></td><td width="55"><fmt:message key="publishUrl.contentId"/> : </td><td width="100">{contentId}</td><td width="55"><fmt:message key="publishUrl.contentName"/> : </td><td width="100">{contentName}</td></tr>',
    '</tpl>',
            '<tr bgcolor="white"><td width="29"></td><td width="55"><fmt:message key="publishUrl.nodePath"/> : </td><td width="100">{nodePath}</td><td width="55"><fmt:message key="publishUrl.cpName"/> : </td><td width="100">{cpName}</td></tr>',
    '</tpl>',
    '</tpl>',
    '</table>'
    )
    tpl.compile();
    tpl.overwrite(body, data);
    });
      

  6.   


       this.expander = new Ext.grid.RowExpander({});漏了···
      

  7.   

    ext中的树形已经封装了了这个方法,如果想自己写,也可以添加一个click事件
      

  8.   

    可以使用树形结构,也可以使用较为复杂一点的table方式展示。你去下extjs,上面有相关的demo,你拿来照着做,就可以解决你想要解决的问题了!
      

  9.   

    这个问题本人已自行解决了。 谢谢合位参与的大虾!
    图片是从自己空间转的,显示不出来。
    本问题要求是。一个多层嵌套的查询
    要求以表格形式展示:
    类似于:
    -1
       -1.1
          1.1.1
          1.1.2
     +1.2
    -2 
       +2.1
       +2.2
    类似于这样的展示模式;要求开始只显示一级目录,点"+"号发ajax请求,前下级目录展现,而下面有几层目录是不确定的。
    这个问题,首先在数据库中对于每个一产品加好父子产品标识,首先点击页面浏览时,检索一级产品,并对包含子产品的一级产品前面加上"+"号标识有子产品。 
    这一步的做法是,有jsp中取出各个产品,对有子产品的加上"+"号,并在后面追加一行,并在行内加入一个表格,表格中加上表格标题行。
    剩下的部分就是ajax请求 ,后台返加json子符串,解析后动态拼接。
    思路大概是这样。 没有图片, 讲的不是很清, 有同样需求的可以私下交流!