微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

bootstrap-treeview 扩展addNode方法 动态添加子节点的方法

bootstrap-treeview  是一款基于Jquery+bootstrap的树控件。

(本文只是详细说明对bootstrap-treeview添加子节点的扩展方法(addNode),如了解bootstrap-treeview所有用法请看官方API)

 使用过程中,需要动态添加子节点。发现api中没有此功能。找了很多资料也没有发现有相关的方法

又不想放弃使用它,看来只能自己写的。先读他们的源代码,看他们的逻辑关系,然后就下手自己写一下。不多说,直接上代码


第一步:在Tree主函数return {/*在这里添加addNode的入口*/}  

看图比较直观


附上代码

 [javascript] view plain copy 
   addNode: $.proxy(this.addNode, this),  第二步:添加Tree的prototype方法

 [javascript] view plain copy 
    /**        给节点添加子节点 @param {Object|Number} identifiers - A valid node, node id or array of node identifiers @param {optional Object} options.node;    */  Tree.prototype.addNode = function (identifiers, options) {                this.forEachIdentifier(identifiers, options, $.proxy(function (node, options) {          this.setAddNode(node, options);       }, this));        this.setinitialStates({ nodes: this.tree }, 0);      this.render();  }       /**    *  添加子节点    */  Tree.prototype.setAddNode = function (node, options) {      if (node.nodes == null) node.nodes = [];      if (options.node) {          node.nodes.push(options.node);            };  };  看图:


第三步:就是如何使用了。



  [javascript] 
     view plain  copy  $("#Treeview01").treeview("addNode", [2, { node: { text: "新加的菜单", href: "001005" } }]);  注意 $("#Treeview01")使用data已初始化过的

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐