我们知道有几个插件可以在HTML表单上使用jQuery执行验证。使用“验证规则”验证“运行时JSON数组”
我们使用jQuery Datatables,使用DataTables Editor进行内联编辑。
https://editor.datatables.net/examples/api/clientValidation.html
的问题是各行提交,并在每一行是可编辑的几个领域的时候,我们真的不想继续写“的if-else”的条件来验证所有可能的编辑列。
当用户编辑细胞,我们得到的是一个JSON名值阵列(当前行数据),例如在这种格式,
var rowData = {
fld_name1: "value1",
fld_name2: "value2",
fld_name3: "value3"
fld_name4: "value4"
fld_name5: "value5"
}
要检查,如果我们能养活这个数组任何验证规则阵列,用于通过jQuery验证插件使用例如格式,https://jqueryvalidation.org/files/demo/
rules: {
fld_name1: "required",
fld_name2: "required",
fld_name3: {
required: true,
minlength: 2
},
fld_name4: {
required: true,
minlength: 5
},
fld_name5: "required"
},
,并检查当前的“rowData”验证好与“规则”阵列定义的规则。
这里“rowData”数组是动态数组,为Datatable中的每个行创建了一个单独的实例。
此外,HTML FORM元素(文本字段)由jQuery Datatables Editor动态生成。所以不要选择在jQuery验证插件上设置表单类型init。
我很擅长使用任何可以提供此运行时数组验证功能的jQuery验证。
JQuery的数据表编辑器动态生成的飞行输入表单域及相关信息。没有包装表单,因此我们可以调用.validate()。即使尝试这样做,它也会对现有数据表编辑器逻辑/侦听器产生其他干扰。 将JSON数组(ROW数据)与验证规则进行匹配的简单解决方案。正在检查此行中的解决方案,它可以匹配来自“rowData”和“rules”的规则,并为与“rowData”中的数据不匹配或具有错误的规则输出任何验证消息。 – mike39
问题在于要求为“rowData”(动态JSON命名数组)与“规则”(预定义的验证规则)匹配的解决方案。 不确定为什么问题被降级。我试图找到解决实际问题的解决方案(“比较JSON命名数组”到“验证规则”),而不重新开发所有验证规则。 JQuery验证插件似乎已经完成了对不同验证组合的所有研究。公开功能不仅用于比较表单,而且还用于比较Dynamic JSON(Key:Value Pair)数组将使其成为更加动态和实用的实用程序插件。 – mike39