Echarts使用一个图例legend实现全选和全部取消的功能

1、修改legend的data值,在前面加上全选和全不选,data = ['全选','全不选',1,2,3]

2、监听 legendselectchanged事件

/ 使用刚指定的配置项和数据显示图表
var selectArr = option.legend.data;
myChart.on('legendselectchanged', function(obj) {
var selected = obj.selected;
var name = obj.name;
// 使用 legendToggleSelect Action 会重新触发 legendselectchanged Event,导致本函数重复运行
// 使得 无 selected 对象
if (name == '全选') {//需要配置一个legend为‘全选’的名称
//alert("33");
var flag = $(this).attr('flag');
if(flag == 1){
var val = false;
$(this).attr('flag',0);
$(this).val('全选中');
}else{
var val = true;
$(this).attr('flag',1);
$(this).val('全不选');
}
var obj = {};
for(var key in selectArr){
obj[selectArr[key]] = val;
}
option.legend.selected = obj;
myChart.setOption(option);
}
});

 

posted @ 2019-06-04 08:46  假装自己是小白  阅读(8082)  评论(1编辑  收藏  举报