diff --git a/examples/views/table/edit/RowValid.vue b/examples/views/table/edit/RowValid.vue
index 8b12681f5..cef1ee665 100644
--- a/examples/views/table/edit/RowValid.vue
+++ b/examples/views/table/edit/RowValid.vue
@@ -4,6 +4,7 @@
新增
校验
+ 选中校验
获取新增
获取删除
获取修改
@@ -51,6 +52,7 @@ export default {
`
新增
校验
+ 选中校验
获取新增
获取删除
获取修改
@@ -95,6 +97,15 @@ export default {
}
})
},
+ selectValidEvent () {
+ let getSelectRecords = this.$refs.xTable.getSelectRecords()
+ if(getSelectRecords.length>0){
+ this.$refs.xTable.validate(getSelectRecords,valid => {
+ if (valid) {
+ }
+ })
+ }
+ },
insertEvent () {
this.$refs.xTable.insert().then(({ row }) => {
// 插入一条数据并触发校验
@@ -148,6 +159,15 @@ export default {
}
})
})
+ },
+ selectValidEvent () {
+ let getSelectRecords = this.$refs.xTable.getSelectRecords()
+ if(getSelectRecords.length>0){
+ this.$refs.xTable.validate(getSelectRecords,valid => {
+ if (valid) {
+ }
+ })
+ }
},
getInsertEvent () {
let insertRecords = this.$refs.xTable.getInsertRecords()
diff --git a/src/components/table/src/table.js b/src/components/table/src/table.js
index 9df8dba48..1ea5b624f 100644
--- a/src/components/table/src/table.js
+++ b/src/components/table/src/table.js
@@ -2806,11 +2806,17 @@ export default {
return Promise.resolve()
},
/**
- * 对整个表格数据进行校验
+ * 对表格数据进行校验
+ * 若传rows为多行记录,则只验证传入的行,否则默认验证整个表格数据
* 返回 Promise 对象,或者使用回调方式
*/
- validate (cb) {
+ validate (rows, cb) {
let { editRules, tableData } = this
+ if (XEUtils.isFunction(rows)) {
+ cb = rows
+ } else if (XEUtils.isArray(rows)) {
+ tableData = rows
+ }
let validPromise = Promise.resolve(true)
this.lastCallTime = Date.now()
this.clearValidate()