当前位置: 首页 > wzjs >正文

网站建设团队技术介绍长沙网站包年优化

网站建设团队技术介绍,长沙网站包年优化,修改网站j广州网络公司,门户网站设计原创/朱季谦 最近通过Vue Element ui实现了动态表单功能,该功能还包括了动态表单新增行、删除行、动态表单验证、动态表单提交功能,趁热打铁,将开发心得记录下来,方便以后再遇到类似功能时,直接拿来应用。 简化的页…

原创/朱季谦

最近通过Vue + Element ui实现了动态表单功能,该功能还包括了动态表单新增行、删除行、动态表单验证、动态表单提交功能,趁热打铁,将开发心得记录下来,方便以后再遇到类似功能时,直接拿来应用。

简化的页面效果图如下:

image

最开始,我是用了纯粹的表格形式,后来发现,这种形式在提交的时候,不好对每个输入框做校验,若是表单形式话,就可以直接通过rule设置每个输入框的验证,因此,我就在表格里面嵌套了表单。注意一点是,el-form-item里的 :prop="scope.$index + '.name'"需要对应el-input的 v-model="studentData[scope.$index].name",两者都是同一个字段值。

<template><div ><div><div><el-button  size="small"  @click="addRow">新增</el-button></div><!--设置的表单--><el-form :model="studentData" ref="data" label-width="auto"><el-tableborder:header-cell-style="{ 'text-align': 'center' }":cell-style="{ 'text-align': 'center' }":data="studentData"ref="table"style="width: 100%"><el-table-column align="center"   label="姓名"><template slot-scope="scope"><!--表格里面嵌套表单--><el-form-item:prop="scope.$index + '.name'":rules="{ required: true, message: '姓名不能为空', trigger: 'blur' }"><el-inputv-model="studentData[scope.$index].name"autocomplete="off"size="small"placeholder="姓名"></el-input></el-form-item></template></el-table-column><el-table-column align="center"  label="年龄"><template slot-scope="scope"><el-form-item:prop="scope.$index + '.age'":rules="{ required: true, message: '年龄不能为空', trigger: 'blur' }"><el-inputv-model="studentData[scope.$index].age"autocomplete="off"size="small"type='number'placeholder="收款方开户行号"></el-input></el-form-item></template></el-table-column><el-table-column align="center"  label="性别"><template slot-scope="scope"><el-form-item:prop="scope.$index + '.sex'":rules="{ required: true, message: '性别不能为空', trigger: 'blur' }"><el-inputv-model="studentData[scope.$index].sex"autocomplete="off"size="small"placeholder="性别"></el-input></el-form-item></template></el-table-column><el-table-column fixed="right" label="操作" width="100"><template slot-scope="scope"><el-button@click="handleDeleteRow(studentData[scope.$index])"type="text"size="small">删除</el-button></template></el-table-column></el-table></el-form></div><div slot="footer" class="dialog-footer" style="margin-bottom: 10px"><el-button size="mini"  @click="submit">提交</el-button><el-button size="mini" @click="resetForm()">重置</el-button></div></div>
</template>

定义一个存储动态表格数据的数组变量

export default {data() {return {studentData:[],};},......
}

在methods方法里增加相关方法,分别是新增行、删除行、提交——

methods:{/*** 新增行*/addRow() {let index = this.studentData.length ;this.studentData.push({key: index,name:'',age:'',sex:'',});},/*** 删除行* @param row*/handleDeleteRow(row){let datas = this.studentData;for (var i = 0; i < datas.length; i++){if (datas[i].key == row.key){datas.splice(i,1);}}},/*** 提交*/submit() {this.$refs["data"].validate(valid => {//valid为true,表示表单都已经验证通过,若为false,说明存在表单验证失败if (valid) {save(this.studentData).then(response => {this.$message({message: '提交成功',type: 'success'});});}});},/*** 重置*/resetForm() {let datas = this.studentData;for (var i = 0; i < datas.length; i++){datas[i].name='';datas[i].age='';datas[i].sex='';}},
}

设置表单验证规则,可统一在rules设置,也可以在每一输入框单独设置,我这里是单独在每一个输入框里设置,即:rules="{ required: true, message: '姓名不能为空', trigger: 'blur' }"就可以了,当然,还可以做一些更复杂的自定义规则。

<el-table-column align="center"   label="姓名"><template slot-scope="scope"><!--表格里面嵌套表单--><el-form-item:prop="scope.$index + '.name'":rules="{ required: true, message: '姓名不能为空', trigger: 'blur' }"><el-inputv-model="studentData[scope.$index].name"autocomplete="off"size="small"placeholder="姓名"></el-input></el-form-item></template></el-table-column>

完成以上步骤,就可以快速写出一个基于Vue + Element ui 实现动态表单,包括新增行/删除行/动态表单验证/提交功能的逻辑。

http://www.dtcms.com/wzjs/354688.html

相关文章:

  • 深圳保障性住房统一轮候信息系统谷歌seo推广招聘
  • postgresql做网站用什么环境搜索引擎优化的主要内容
  • 做网站南宁台州seo排名优化
  • 秦皇岛建网站网络销售工资一般多少
  • 网站设计的要求有哪些seo短视频网页入口引流免费
  • 广州做网站推广公司酒店机票搜索量暴涨
  • 建筑资料下载网天津百度网站快速优化
  • 电商网站为什么要提高网站友好度数据分析师需要学哪些课程
  • 做公众号的素材网站免费网站优化排名
  • 蓝田网站建设seo高效优化
  • 网站改版建设征求意见书东莞网站建设推广公司
  • 武进网站建设平台重庆百度整站优化
  • 写作平台兰州网络推广优化怎样
  • seo实战教程如何优化关键词的方法
  • 群晖套件做网站网络推广外包费用
  • 做自媒体小视频哪个网站比较赚钱广告投放策略
  • 免认证域名注册seo推广排名重要吗
  • java 直接做网站百度账号人工申诉
  • 网站建设技能考试杭州关键词优化测试
  • 网站的建设步骤包括微营销推广平台有哪些
  • 公众号运营收费标准网站优化建设
  • 东莞网站排名不受限制的搜索引擎
  • 赤水网站建设电商运营方案计划书
  • 门户网站目标客户百度下载并安装最新版
  • 榆林公司网站建设个人怎么做互联网推广平台
  • 中山哪家做网站的好济宁百度推广价格
  • 昆明微网站制作全网
  • 做网站国外访问线上销售如何找到精准客户
  • 解决设计网站问题seo网络推广机构
  • 云羽网络网站建设网站运营推广