el-table-column 有两个input怎么校验

在el-table-column中使用两个input进行数据验证时,可以通过Vue的双向数据绑定和Element UI的表单验证机制来实现。以下是一个简单的示例:

  1. 使用el-form和el-form-item来包裹el-table,以便使用表单验证功能。

  2. 在el-table-column中使用template或者scoped slot来定义两个input。

  3. 使用Vue的v-model来创建双向数据绑定。

  4. 为每个input添加验证规则。

复制代码
复制代码
<template>
  <el-form :model="form" :rules="rules" ref="tableForm">
    <el-table :data="tableData" style="width: 100%">
      <el-table-column prop="name" label="名称">
        <template slot-scope="scope">
          <el-form-item :prop="'[' + scope.$index + '].name'" :rules="rules.name">
            <el-input v-model="scope.row.name"></el-input>
          </el-form-item>
        </template>
      </el-table-column>
      <el-table-column label="操作">
        <template slot-scope="scope">
          <el-button @click="validateRow(scope.$index)">验证</el-button>
        </template>
      </el-table-column>
    </el-table>
  </el-form>
</template>
 
<script>
export default {
  data() {
    return {
      tableData: [
        { name: '' } // 初始化数据
      ],
      form: {},
      rules: {
        name: [
          { required: true, message: '请输入名称', trigger: 'blur' }
        ],
      }
    };
  },
  methods: {
    validateRow(index) {
      this.$refs.tableForm.validateField(`[${index}].name`, valid => {
        if (valid) {
          console.log('验证通过');
        } else {
          console.log('验证失败');
        }
      });
    }
  }
};
</script>

在这个示例中,每当你在el-input中输入内容并移出焦点,对应的行会进行名称的验证。如果输入不符合规则,会显示错误信息。你可以为每个input添加不同的验证规则,并在validateRow方法中调用this.$refs.tableForm.validateField来验证特定行的特定字段。

相关推荐
米米商聊30 分钟前
同名附件为什么被 Map 覆盖?重复键与一对多索引
前端·javascript
kyriewen3 小时前
我把 10 道面试题答案真跑了一遍:6 道是错的
前端·javascript·面试
WebInfra4 小时前
Rspack 2.3 发布:联手 SWC 团队带来全新编译器
前端·javascript·github
FRing035 小时前
JavaScript入门到精通三十一(原型继承、原型链)
开发语言·前端·javascript
程序员大阳6 小时前
副队长JavaScript教程(52)-DOM操作元素的内容
javascript·dom·innertext·innerhtml·value·内容操作
裕波7 小时前
苏千|从 cnpm 到 Vite+:AI 时代的开发者体验演进
javascript
console.log('npc')7 小时前
周期任务功能完整实现:CRON 编辑器 + 模板变量 + 执行历史
javascript·vue.js·编辑器
程序员大阳7 小时前
副队长JavaScript教程(58)-基于DOM的网页留言板开发
javascript·实例·dom·案例·留言板
咚咚咚小柒7 小时前
【前端】LangChain.js学习
前端·javascript·人工智能·typescript·langchain·vue·ai编程
程序员大阳9 小时前
副队长JavaScript教程(55)-DOM节点增删改查
javascript·dom·增删改查·节点·克隆