当一个组件渲染完毕后,我想修改其配置的若干属性
然后让其再次重新渲染,请问可有什么方法,或者
大家说下自己的思路,谢了。

解决方案 »

  1.   

    渲染后,你修改属性。然后再次调用render()方法就可以了啊。
      

  2.   

    我写个例子如下:
    Ext.onReady(function()
    {
        var node1 = new Ext.tree.TreeNode({text:'我是根的第一个枝子n1'});
        var node2 = new Ext.tree.TreeNode({text:'我是根的第一个枝子的第一个叶子n2'});
        var node3 = new Ext.tree.TreeNode({text:'我是根的第一个叶子n3'});
        var node4 = new Ext.tree.TreeNode({text:'我是根的第一个叶子n4'});
        node1.appendChild(node2);//根结点上添加子结点
        node2.appendChild(node3);
        var treeconfig={title:'tree',el:"tree",rootVisible:true,enableDD:true,useArrows:true,lines:true};
        var tree = new Ext.tree.TreePanel(treeconfig);
         tree.on("nodedrop", function(e)//拖动结点时
         {
             alert("nodedrop");
         });
         tree.on("contextmenu", function(e)//拖动结点时
         {
             alert("contextmenu");
         });    var root=new Ext.tree.TreeNode({text:"我是根",expanded:true})//添加根结点
        tree.setRootNode(root);//设置根结点
        tree.root.appendChild(node1);
        tree.root.appendChild(node4);
        tree.render();//渲染
        node1.expand();//展开自己
        tree.title='1234';
        tree.rendered=false;
        tree.render();
    });
    但没效果请高人指点
      

  3.   

    有一个重新渲染的方法调用一下,LZ不要那么懒,查一下API就知道了
      

  4.   

    如果只是要修改TITLE,都有修改TITLE的方法
      

  5.   

    我不是只要修改title只是举个例子,
    api我也查了关键不知道该使用哪个
    函数,还请高手指明。
      

  6.   

    如果单纯的treepanel的话,修改节点的文字,直接用node.setText就可以了,如果是treegrid要修改表中的数据项的话那么要直接修改底层元素的innerHTML了,EXT貌似还没给出修改treegrid数据项的API,不过可以参考setText的源码自己写个。