请问:1:ext在编辑树时,我只能获得被编辑树 编辑后的值  和 编辑前的值,请问如何获得被编辑树的id.
      2:树编辑完成后,数据库记录已改,如何重新刷新一次树。
      谢谢大家的回答!

解决方案 »

  1.   

    1、你是怎么获取编辑后的值的?贴出代码
    2、tree.store.reload();
      

  2.   

    var westPanel = new Ext.tree.TreePanel({
    id : westPanel,
    width : 140,
    title : "代码生成树",
    bodyStyle : "background:#eff9fe;",
    autoScroll : true,
    animate : true,// true表示使用动画展开/折叠
    enableDD : true,// 允许拖放
    containerScroll : true,
    root : root,
    listeners : {// 在加载之前的一个监听事件
    'beforeload' : function(node) {
    node.loader = new Ext.tree.TreeLoader({// 树节点的数据来源
    url : "/codeutil/codeTree.do?method=queryTree",// 请求的路径
    baseParams : {// 请求参数
    u_id : node.id
    }
    });
    }
    }
    });var editTree = new Ext.tree.TreeEditor(westPanel, {
    allowblank : false,
    clicksToEdit : 1,
    minLength : 3,
    maxLength : 10
    });editTree.on('beforestartedit', function(editTree) {
    return editTree.editNode.isLeaf();
    });editTree.on("complete", function(cditTree, newValue, oldValue) {
    //这里获取修改前和后的值!
    if (newValue != oldValue) {
    Ext.Ajax.request({
    url : "/codeutil/codeTree.do?method=updateTree",
    params : {
    newValue : newValue,
    oldValue : oldValue
    },
    success : function(response, options) {
    Ext.MessageBox.alert("修改成功");
    /*
     * westPanel.on("beforeload", function(node) {
     * node.loader = new Ext.tree.TreeLoader({//
     * 树节点的数据来源 url :
     * "/codeutil/codeTree.do?method=queryTree",//
     * 请求的路径 baseParams : {// 请求参数 u_id : node.id }
     * }); });
     */
    },
    failure : function(response, options) {
    failureExecute(response, options);
    }
    }) } else {
    Ext.MessageBox.alert("noEdit");
    }
    });