使用了dojo102的新版树形结构组件,发现和原来的版本差别十分巨大(无论是在实现还是在使用上)
很多以前方便的方法都被去掉了,只能自己修改源代码了……
先说一下在新版树结构中添加复选框的方式:
在这里添加的复选框类型是dijit.form.CheckBox类型。
首先我继承出一个新的treeNode类型的widget:
在template中添加了存放复选框的div:
现在contentNode部分变成了:
"<div dojoAttachPoint=\"contentNode\" class=\"dijitTreeContent\" waiRole=\"presentation\">\n\t\t",
" <div dojoAttachPoint=\"iconNode\" class=\"dijitInline dijitTreeIcon\" waiRole=\"presentation\">",
"</div>\n\t\t",
"<span dojoAttachPoint=\"boxNode\" class=\"dijitTreeLabel\" wairole=\"treeitem\" >",
"</span>\n\t",
"<span dojoAttachPoint=\"labelNode\" class=\"dijitTreeLabel\" wairole=\"treeitem\" tabindex=\"-1\">",
"</span>\n\t",
"</div>\n",
红色的部分就增加的。
然后在postCreate方法中增加CheckBox:
box =new dijit.form.CheckBox(param);
this.boxNode.appendChild(box.domNode);
其中param是创建CheckBox的一些参数。
这样,就可以将复选框增加到树节点前面了。