先上效果图:

在点击确认的时候会验证带有验证的字段

嵌套逻辑:

表单
表格
表格项
表单项
表单项
表格项
表格
表单

代码部分:

<!-- 注意此处的model,需要一个对象,而我们的数据是一个列表,我们列表封装成一个对象放在这里就ok了 这里不需要指定rules-->
<el-form :model="{'sysDictDataList':sysDictDataList}" ref="sysDictDataListRules">
<el-table
:data="sysDictDataList"
style="width: 100%">
<el-table-column
label="字典类型">
<template slot-scope="scope">
<el-form-item>
<el-input v-model="scope.row.dictType" :disabled="true"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="dictType"
label="数据标签">
<template slot-scope="scope">
<!-- 注意此处的prop,需要使用此类型,不能直接填字段名 rules指向该字段的验证规则 -->
<el-form-item :prop="'sysDictDataList.'+scope.$index+'.dictLabel'" :rules="sysDictDataListRules.dictLabel">
<el-input v-model="scope.row.dictLabel" placeholder="请输入数据标签"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="dictType"
label="数据键值">
<template slot-scope="scope">
<el-form-item :prop="'sysDictDataList.'+scope.$index+'.dictValue'" :rules="sysDictDataListRules.dictValue">
<el-input v-model="scope.row.dictValue" placeholder="请输入数据键值"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="dictType"
label="显示排序">
<template slot-scope="scope">
<el-form-item :prop="'sysDictDataList.'+scope.$index+'.dictSort'" :rules="sysDictDataListRules.dictSort">
<el-input-number v-model="scope.row.dictSort" controls-position="right" :min="0"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
label="备注">
<template slot-scope="scope">
<el-form-item :prop="'sysDictDataList.'+scope.$index+'.remark'" :rules="sysDictDataListRules.remark">
<el-input v-model="scope.row.remark" placeholder="请输入内容"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
label="状态">
<template slot-scope="scope">
<el-form-item>
<el-radio-group v-model="scope.row.status">
<el-radio
v-for="dict in statusOptions"
:key="dict.dictValue"
:label="dict.dictValue"
>{{dict.dictLabel}}
</el-radio>
</el-radio-group>
</el-form-item>
</template>
</el-table-column>
<el-table-column
label="操作">
<template slot-scope="scope">
<el-form-item>
<el-button @click="deleteDetails(scope.$index,sysDictDataList)">删除</el-button>
</el-form-item>
</template>
</el-table-column>
</el-table>
</el-form>

数据:

            sysDictDataList: [],   // 字典详细列表
sysDictDataListRules: { // 字典详细列表的验证
dictLabel: [
{required: true, message: "数据标签不能为空", trigger: "blur"}
],
dictValue:[
{required: true, message: "数据键值不能为空", trigger: "blur"}
],dictSort:[
{required: true, message: "排序不能为空", trigger: "blur"}
],remark:[
{required: true, message: "备注内容不能为空", trigger: "blur"}
]
}

验证方法:

             this.$refs['sysDictDataListRules'].validate(valid =>{
if (valid){
console.log('验证成功,提交');
}
});

注意:如果是根据不同条件展示不同验证表单,使用v-if可能会有意想不到的错误发生,我使用v-show解决此类问题

vue列表中表单的验证的更多相关文章

  1. 关于vue.js中表单控件绑定练习

    html: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8 ...

  2. Vue iview 表单封装验证

    以下内容转自iview社区,仅供自己查看使用 Form表单部分 <div> <Form ref="FormOne" :model="FormOne&qu ...

  3. elementUI中表格中表单的验证

    表格中的表单验证,就是在将表格放在表单中,将表格绑定的数据也放在表单中. 最重要的是要给表格中需要验证的字段动态添加prop,再给其绑定规则. <el-form :model="tab ...

  4. Bootstrap中表单控件状态(验证状态)

      Bootstrap 表单 http://www.runoob.com/try/try2.php?filename=bootstrap3-form-controlstate (这链接里有简介) &l ...

  5. HTML5中表单验证的8种方法(转)

    在深人探讨表单验证之前,让我们先思考一下表单验证的真实含义.就其核心而言,表单验证是一套系统,它为终端用户检测无效的控件数据并标记这些错误.换言之,表单验证就是在表单提交服务器前对其进行一系列的检查并 ...

  6. HTML5中表单验证的8种方法

    HTML5中表单验证的8种方法 2012-4-21 11:00| 发布者: benben| 查看: 2765| 评论: 0 摘要: 前一篇,我们介绍了HTML5中新的表单特性和函数, 今天就继续来谈谈 ...

  7. YII中表单验证

    关于表单的验证有三种: 1.yii的客户端验证 2.yii的服务器端验证 3.yii的ajax验证 例如: 1.在表单对应的模型中定义一个rules方法(该方添加后,在表单提交时,将自动被调用) pu ...

  8. angular 中表单验证的探索

    需求 之前有一段时间做一个搜索查询 但是有很多限制条件,如果校验不成功需要给用户提示错误,当然项目用的是组件库的校验 我能否自己写一个? 其实 我是不会的!!! 探索 angular 的校验功能很强大 ...

  9. spring boot中表单验证的使用

    一.前言 为啥子要搞这个表单验证呢?答案简单而现实,举个栗子,你辛辛苦苦的写了一个录入个人信息的功能,比如年龄这个位置,用户就没看到一下子写了个性别男,一提交,直接报错了,是不是很尴尬呢, 作为一个测 ...

随机推荐

  1. python之循删list

    先来看下循环遍历删除list元素的一段代码: L=[1,3,1,4,3,6,5] # 0 1 2 3 4 5 6(下标) for i in L: if i%2!=0:#%表示除商取余数,除以2余数为0 ...

  2. Javascript面试题&知识点汇总

    问题&答案 什么时候 a ==1 && a== 2 && a==3 为 true? var a = { i: 1, toString: function () ...

  3. SRA|GEO|Taxonomy|Pubmed|MeSH|EBI|Uniprot|Human project|Ensembl|UCSC

    生物医学大数据: SRA:Sequence Read Archive (SRA) makes biological sequence data available to the research co ...

  4. SpringMVC学习笔记四:SimpleMappingExceptionResolver异常处理

    SpringMVC的异常处理,SimpleMappingExceptionResolver只能简单的处理异常 当发生异常的时候,根据发生的异常类型跳转到指定的页面来显示异常信息 ExceptionCo ...

  5. 吴裕雄--天生自然KITTEN编程:躲迷藏

  6. 推拿O2O 想说爱你还不容易

    想说爱你还不容易" title="推拿O2O 想说爱你还不容易"> <屌丝男士>第四季最后一集里,乔杉终于圆了"大保健"的梦想,可惜 ...

  7. Atom配置(VIM党) · iuunhao

    为什么说是Vim党呢?首先我是一个深度的Vim用户,自己的电脑上基本上可以兼容Vim的插件都有,所有浏览器,所有编辑器都是Vim的操作方式,当然包括我现在书写的markdown的软件EME也是兼容的V ...

  8. 15.uboot study 串口初始化

    3. 串口初始化 4. 代码实现 关于串口 对于嵌入式设备的开发,刚开始好多设备都无法使用,由于无法获得程序的运行状态,调试程序需要花费好多时间和精力,因此串口对于嵌入式程序的调试的作用显而易见,当串 ...

  9. Python3爬虫:(一)爬取拉勾网公司列表

    人生苦短,我用Python 爬取原因:了解一下Python工程师在北上广等大中城市的薪资水平与入职前要求. Python3基础知识 requests,pyquery,openpyxl库的使用 爬取前的 ...

  10. MySQL 的 RowNum 实现(排行榜计算用户排名)

    1. 计算用户排名最高效的方法 例如:通过用户分享个数排名,那么自己的排名就是:比自己分享数多的用户个数 + 1 ' and `count` > '自己分享个数' 缺点:当多个用户分享个数相同的 ...