求各位大神指点迷津!
目前项目中需要使用extjs实现一个同时带有复选框和单选按钮的扩展树,只带有复选框的树应实现了,现在需要在每一个节点的后边添加一组单选按钮,
就是说每一个节点从左到右依次是复选框、文字描述和单端按钮,
求各位大神指导,在线求救extextjs复选框单选按钮

解决方案 »

  1.   

    我不知道你你Tree是用的TreePanel,还是TreeGrid,如果是TreeGrid,这个很好解决,我可以给你写个,不过测试要点时间,你先确定用哪个组件。
      

  2.   

    不好意思啊,撸主,我做出来的BUG太多了,获取不了radio的布尔值,帮你顶下吧。
      

  3.   

    多谢了啊 不过,能不能给点思路 我可以自己试试的
    方法倒是有几个,不过你得做测试,下面用的是TreePanel组件
    1.我用的是最直接的,在数据的text属性内容里,添加html标签,比如:
      text:'树节点名称1.'+'<input type="radio" name="标识唯一" />'
      ...
      text:'树节点名称2.'+'<input type="radio" name="标识唯一" />'
    经过测试这种方式,无法获取radio的布尔值。
    2.如果你用的是TreeGrid,你可以尝试将checkbox和radio组件分别放在2个column里,这样既能复选,又能单选,这个我没测了,不过我估计会出现第一个方案同样的问题,无法选择radio的bug,你如果感兴趣可以试试这个。
    3.最后一个是最保险的,也是最难的,你应该已经发现了,我如果在treenode加载的数据里添加checked属性, node在渲染的时候会根据你是否有checked属性名而决定是否画出复选框,那么同样的原理,如果你能找到这段源码,做适当的修改,同样添加一个raido属性,然后treenode在渲染的时候也根据是否有radio属性画出单选框。这个貌似有点困难,因为涉及到了扩展组件方面的东西,你感兴趣的话,也可以去试试。我昨天找了下node相关的源码,没找到他的实现,估计封装的比较深。我暂时就知道这些个方法,撸主如果你解决了这个问题,请把方案贴出来。
      
      

  4.   

    多谢了啊 不过,能不能给点思路 我可以自己试试的
    方法倒是有几个,不过你得做测试,下面用的是TreePanel组件
    1.我用的是最直接的,在数据的text属性内容里,添加html标签,比如:
      text:'树节点名称1.'+'<input type="radio" name="标识唯一" />'
      ...
      text:'树节点名称2.'+'<input type="radio" name="标识唯一" />'
    经过测试这种方式,无法获取radio的布尔值。
    2.如果你用的是TreeGrid,你可以尝试将checkbox和radio组件分别放在2个column里,这样既能复选,又能单选,这个我没测了,不过我估计会出现第一个方案同样的问题,无法选择radio的bug,你如果感兴趣可以试试这个。
    3.最后一个是最保险的,也是最难的,你应该已经发现了,我如果在treenode加载的数据里添加checked属性, node在渲染的时候会根据你是否有checked属性名而决定是否画出复选框,那么同样的原理,如果你能找到这段源码,做适当的修改,同样添加一个raido属性,然后treenode在渲染的时候也根据是否有radio属性画出单选框。这个貌似有点困难,因为涉及到了扩展组件方面的东西,你感兴趣的话,也可以去试试。我昨天找了下node相关的源码,没找到他的实现,估计封装的比较深。我暂时就知道这些个方法,撸主如果你解决了这个问题,请把方案贴出来。
      
    我想到了最直接的那个,出现了无法选择单选按钮的问题。