Extjs Ext.js可编辑树节点

Extjs Ext.js可编辑树节点,extjs,tree,treenode,treepanel,Extjs,Tree,Treenode,Treepanel,用户是否可以编辑树节点(即文件夹)?我看到TreeNode类中有一个名为editable的选项,但我无法让它工作,也找不到任何关于其用法的示例 我的另一个任务是在节点中放置一个输入框,以便用户可以为每个项目输入数字。我怎么做?添加新的Ext.tree.TreeEditor(yourTree)将足以使树可编辑 但是,您可以通过使用其他2个contructors参数来定义更多内容: var te = new Ext.tree.TreeEditor(tree, new Ext.form.NumberF

用户是否可以编辑树节点(即文件夹)?我看到TreeNode类中有一个名为editable的选项,但我无法让它工作,也找不到任何关于其用法的示例


我的另一个任务是在节点中放置一个输入框,以便用户可以为每个项目输入数字。我怎么做?

添加
新的Ext.tree.TreeEditor(yourTree)将足以使树可编辑

但是,您可以通过使用其他2个contructors参数来定义更多内容:

var te = new Ext.tree.TreeEditor(tree, new Ext.form.NumberField({
    allowBlank: false,
    blankText: 'A number is required'
}), {
    editDelay: 100,
    revertInvalid: false
});

te.on("complete", function(node) {
    alert(node.startValue + ' -> ' + node.editNode.text);
});
在那里,我使用了一个数字字段,因此您只能在其中输入数字

您可以通过使用每个树节点(是的,您提到的树节点)的
editable
属性来限制编辑,或者通过使用树编辑器的
beforesteatedit
事件来限制编辑:

te.on('beforestartedit', function(ed, boundEl, value) {
    if (ed.editNode.leaf)
      return false;
});
中,您有一个我基于的实例,不同之处在于您可以编辑我的示例中的文件夹节点

只需选择一个文件夹,然后再次单击该文件夹,编辑器(一个数字字段)就会出现在文件夹名称上方