SpreadJS支持复选框列表,在默认情况下是不会对选择的个数有限制,也就是说默认情况下有多少个就能选择多少个。单选框列表只能单选一个,而复选框列表可以不限个数,有小伙伴有限制选择的需求,我们可以通过ValueChanged实现。
我们首先来看下复选框选中之后,getValue拿到的是什么。可以看到,拿到的是一个数组。
那么思路就来了,我们想要限制选中的个数,可以通过限制这个数组的长度实现。例如上面有三个复选框,我们想要限制最多只能选择两个。也就是说,当数组长度大于2时,我们将其值还原。利用下面的代码。
- sheet.bind(GC.Spread.Sheets.Events.ValueChanged, function (e, info) {
- var arr = info.newValue;
- if(arr.length > 2){
- sheet.setValue(0,1,info.oldValue)
- }
- });
复制代码
|
|