extjs 2.0 下拉树(combo+tree) - 分享推动发展- 李飞飞- JavaEye技术网站
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>tree.html</title>

    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
   
    <link rel="stylesheet" type="text/css" href="/html/js/ext2/resources/css/ext-all.css" id="cssfile"/>
    <script type="text/javascript" src="/html/js/ext2/adapter/ext/ext-base.js"></script>
    <script type="text/javascript" src="/html/js/ext2/ext-all.js"></script>
   
    <script type="text/javascript">
/**
tree demo 1 异步树
组成:
    1.节点
       a.普通节点
       b.根节点
       c.默认属性 id text leaf children icon
      
    2..树加载器
    3.树容器
    4.事件
    5.渲染
**/
Ext.onReady(function() {
    var comboHidden = new Ext.form.Hidden({
        name:'comboHidden',
        value:''
    })
    var comboxWithTree = new Ext.form.ComboBox({ 
    store:new Ext.data.SimpleStore({fields:[],data:[[]]}), 
    editable:false, 
    mode: 'local', 
    triggerAction:'all', 
    maxHeight: 200,
    height:500,
    tpl: "<div id='tree'></div>",
    selectedClass:'',
    value:'',
    onSelect:Ext.emptyFn 
});
comboxWithTree.render('comboxWithTree');
  
    var opRoot = new Ext.tree.AsyncTreeNode({
        id:'1',
        text:'root'
    });
    //与后台通讯的加载器
    var loader = new Ext.tree.TreeLoader({
        dataUrl: '/organizationAction.do',
        baseParams:{
            method:'getTree',
            pId:''
        }
    });
    //树容器
    var opTree = new Ext.tree.TreePanel({
        anchor : '95%',
        frame : false,
        width:200,
        height:400,
        animate : false,
        rootVisible : true,
        autoScroll : true,
        loader : loader, //之前定义的加载器
        root : opRoot  //之前定义的根节点
    });
    //加载之前所触发的事件
    opTree.loader.on("beforeload", function(treeLoader, node) {
        loader.baseParams.pId = node.attributes.id;
    });
    //树节点点击事件
    opTree.on('click',function(node) {
        comboxWithTree.setValue(node.attributes.text);
        comboHidden.setValue(node.attributes.id);
        comboxWithTree.collapse();
        alert(comboHidden.getValue());
    });
    comboxWithTree.on('expand',function(){
        opTree.render('tree');
        opTree.root.reload();
    });
   
});
    </script>
  </head>
  <body>
      <div id='comboxWithTree'>
      </div>
  </body>
</html>
{zx1}评论

  • 感觉ext对应窗口的处理应该在内部完善下。 拿confirm这个为例,如果回调fu ...
    -- by

  • 第15条是啥意思啊?value:undefined?直接把allowBlank去掉 ...
    -- by

  • fsdos 写道很好 10.使用enter键代替tab键切换焦点 var el ...
    -- by

  • 很好 10.使用enter键代替tab键切换焦点 var el =Ext.get ...
    -- by

  • vishare 写道谢谢共享这些学习经验,收藏不小. 关于 10.使用enter键 ...
    -- by
郑重声明:资讯 【extjs 2.0 下拉树(combo+tree) - 分享推动发展- 李飞飞- JavaEye技术网站】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——