SpreadJS类Excel表格控件自定义数据验证
在SpreadJS中有数据验证功能,可以像Excel一样在未通过验证时高亮提示,也可以在提交数据前调用接口检查数据合法性。同时我们也可以自定义数据验证规则,实现业务所需的特定逻辑。
1. 自定义验证条件,在evaluate方法中我们加入所需逻辑,返回验证结果即可,示例中只要等于期待值即为通过验证。
function CustomerCondition(compareType, expected, formula){ var self = this; self.ignoreBlank = false; self.conditionType = \"CustomerCondition\"; self.compareType = compareType; self.expected = expected; self.formula = formula; }; CustomerCondition.prototype = new GcSpread.Sheets.CellValueCondition(); CustomerCondition.prototype.evaluate = function(evaluator, baseRow, baseColumn, actualValue){ if(actualValue === this.expected){ return true; } else{ return false; } }
2. 初始化验证条件,并将添加加入验证器中,在单元格设置验证器。
var cCondition = new CustomerCondition(GcSpread.Sheets.GeneralCompareType.EqualsTo, 4); var validator1 = new GcSpread.Sheets.DefaultDataValidator(cCondition); validator1.inputTitle = 'Please choose '; validator1.ignoreBlank =false; validator1.type = GcSpread.Sheets.CriteriaType.Custom; activeSheet.setDataValidator(3,3, validator1); activeSheet.setDataValidator(3,4, validator1); spread.highlightInvalidData(true); activeSheet.setValue(3, 3, -1); activeSheet.setValue(3, 4, 4); 以上就是SpreadJS自定义数据验证的具体方法,快去试试吧。
因篇幅问题不能全部显示,请点此查看更多更全内容