Handsontable - 根据可用的selectOptions验证单元格数据

时间:2017-05-04 13:55:47

标签: jquery handsontable


我是Handsontable的大三学生,我有这个问题:
我的表完全正常工作,我在每个单元格上使用编辑器“选择”不同的选择选项。根据单元格,选择选项是不同的。但是,如果我将一个单元格的值复制/粘贴到另一个单元格(此粘贴值不是选择选项的一部分),它可以工作,我真的希望单元格不验证此值。
< / p>

我在JsFiddle上做了一个小例子让自己明白:
JsFiddle
如果你复制第一行和col上的'A',你将它粘贴在C列的单元格上,它就可以了。即使它不应该,因为该列的选择选项是“C”或“D”。

我很确定与cellValidator有关,但我不知道如何继续。有没有人知道如何纠正这个问题..?
提前谢谢

1 个答案:

答案 0 :(得分:0)

在这种情况下,我个人使用的是“下拉列”或“自动填充”列。对那些列类型进行处理,可以使用附加选项'strict'可以是true或false,'allowInvalid'(再次,true或false):

columns: [
  {
    type: 'dropdown',
    source: ['A', 'B'],
    strict: true,
    allowInvalid: false
  },
  {
    type: 'dropdown',
    source: ['B', 'C', 'D'],
    strict: true,
    allowInvalid: false
  },
  {
    type: 'dropdown',
    source: ['C', 'D'],
    strict: true,
    allowInvalid: false
  }
]

来自文档:

  

严格: true - 自动填充单元格只会接受以下值   在源数组中定义。

     

[...]

     

allowInvalid: false - 不允许手动输入值   在源中不存在。在这种情况下,将忽略ENTER键   编辑器字段仍然打开。

您可以找到编辑here的示例,了解其工作原理。