easyUi combotree 实现动态加载树节点

来源:互联网 发布:域名不续费会怎么样 编辑:程序博客网 时间:2024/05/21 17:15

转载的文章:

1、easyui 1.2.4

2、按官方说明编写如下代码:

<selectid="cc"style="width:200px;"></select>

<inputid="cc"value="01">

3、现在我们来实现动态加载:
首先,以行政区划为例,combotree,假如我们每次访问都需要传入一个上级代码的areaId,easyui tree,现在我们来设置首次访问的url。combotree。

 $('#cc').combotree({

url:"areaTree.ajax?areaId=0", 
onBeforeExpand:function(node) {
      $('#cc').combotree("tree").tree("options").url = "areaTree.ajax?areaId=" + node.id;
}

 });

分析:

     1、url:"areaTree.ajax?areaId=0", 这个ajax表示ajax到后台取数据,easyui tree,areaId = 0,这个表示首先应该是加载 全国 这个根节点
     2、onBeforeExpand:这个是监听我每次点击非末级节点,展开其下级子节点时,easyui numberbox,展开前做什么事。combotree。查看comboxtree的源码,easyui tree,我们可以发现如下这段:
可以看出combotree 是继承 combo  和 tree两个控件。因此,easyui,我们在监听这个事件时,easyui numberbox,才做了如上写的代码,把combotree内置的tree的options选项的url重置成一个动态取选择值的url。easyui numberbox。
注意:这里不能写成: $('#cc').combotree("tree").tree({URL:"areaTree.ajax?areaId=" + node.id}),combotree, 如果这样写,combotree,combotree会执行两次调用,并且把你原来的值给清除,用新的获取到的值替换,extjs  combotree,相当于做了reload的操作。这个可以从combotree的源码的reload方法里面看出来:
0 0
原创粉丝点击