我正在尝试GetOrgChart并有一个问题,可以更改盒子的颜色,但是我没有找到一种方法来改变基于过滤器的盒子的颜色(即如果你是男孩,盒子是蓝色和粉红色的女孩)。我知道renderBoxContentEvent事件,但我无法找到一种方法来使用它来修改盒子的颜色
提前谢谢!
答案 0 :(得分:0)
查看以下演示:http://www.getorgchart.com/Demos/Box-Color
它准确地展示了你想要实现的目标
答案 1 :(得分:0)
我遇到了同样的问题并制定了一个肯定不太好的解决方法,但它确实有效。
设置2个数组,根据data.Sex的结果收集id。
var warr = new Array(); // array for the women
var marr = new Array(); // array for the men
$('#people').getOrgChart({
renderBoxContentEvent: function( sender, args ) {
if (args.data.Sex == "Female") {warr.push(args.id);}
if (args.data.Sex == "Male") {marr.push(args.id);}
},
primaryColumns: ["Name"],
editable: true,
dataSource: [
{ id: 1, parentId: null, Name: "Amber McKenzie", Sex : "Female"},
{ id: 2, parentId: 1, Name: "Ava Field", Sex : "Female"},
{ id: 3, parentId: 1, Name: "Ben Johnson", Sex : "Male"}]
});
// now loop through the arrays to color the boxes
for (var i = 0; i < warr.length; i++) {$("#people").getOrgChart("setBoxColor",warr[i],"lightgreen");} // girls green
for (var i = 0; i < marr.length; i++) {$("#people").getOrgChart("setBoxColor",marr[i],"lightblue");} // men blue
});
答案 2 :(得分:0)
在演示的底部(http://www.getorgchart.com/Demos/Box-Color),有一些JQuery代码用于设置数据源中特定索引的框颜色:
$("#people").getOrgChart("setBoxColor", 6, "green");