JSRUN 用代码说话

添加选框事件

编辑教程

添加选框事件

事件.brush

选框添加事件。即发出 brush action 得到的事件。

事件.brushselected

对外通知当前选中了什么。

这个事件,在 setOption 时不会发出,在其他的 dispatchAction 时,或者用户在界面中创建、删除、修改选框时会发出。

事件参数内容为:

{
    type: 'brushselected',
    batch: [
        {
            brushIndex: number // brush 组件的id,大多数情况只使用一个 brush 组件,所以不必理会。
            selected: [ // 每个系列被选中的项。
                        // 注意,如果某个系列不支持 brush,但是还是会在这里出现对应的项。
                        // 也就是说,selected 可以使用 seriesIndex 来直接找到对应的项。
                { // series 0 被选中的项
                    seriesIndex: number,
                    dataIndex: [ 3, 6, 12, 23 ] // 用这些 dataIndex,可以去原始数据中找到真正的值。
                },
                { // series 1 被选中的项
                    seriesIndex: number,
                    dataIndex: []
                },
                ...
            ]
        },
        ...
    ]
}

事件使用方式例如:

var dataBySeries = [
    [ 12, 23, 54, 6 ], // series 0 的数据
    [ 34, 34433, 2223, 21122, 1232, 34 ] // series 1 的数据
];
chart.setOption({
    ...,
    brush: {
        ...
    },
    series: [
        { // series 0
            data: dataBySeries[0]
        },
        { // series 1
            data: dataBySeries[1]
        }
    ]
});
chart.on('brushSelected', function (params) {
    var brushComponent = params.batch[0];
    var sum = 0; // 统计选中项的数据值的和
    for (var sIdx = 0; sIdx < brushComponent.selected.length; sIdx++) {
        // 对于每个 series:
        var dataIndices = brushComponent.selected[sIdx].dataIndex;
        for (var i = 0; i < dataIndices.length; i++) {
            var dataIndex = dataIndices[i];
            sum += dataBySeries[sIdx][dataIndex];
        }
    }
    console.log(sum); // 用某种方式输出统计值。
});

如果想避免此事件频繁触发,可以使用 brush.throttleType。

JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟