vue+element创建动态的form表单及动态生成表格的行和列


Posted in Javascript onMay 20, 2019

  动态创建form表单,网上有插件 (form-create) 不过我不知道它怎么用,没有使用成功,如果你使用成功了,欢迎下方留言.

最后我使用了笨方法,针对各个表单写好通用的组件,然后根据type用v-if来渲染对应的表单,数据,事件什么的都可以动态的传进去,比较好用

<el-form size="mini" class="lj-form lj-form-s1">
       <div v-for="(item,i) in table.customerList" :key="i">
        <!-- 0单行文本 -->
        <el-form-item
         :label="item.field_title + ': '"
         v-if="item.field_type == '0' && item.is_show == '1'"
        >
         <el-input v-model="item.value" :placeholder="item.placeholder"></el-input>
        </el-form-item>
       <!-- 3下拉菜单 -->
        <el-form-item
         :label="item.field_title + ': '"
         v-if="item.field_type == '3' && item.is_show == '1'"
        >
         <el-select v-model="item.value" :placeholder="item.placeholder">
          <span v-for="(item1,i) in item.field_value" :key="i">
           <el-option :label="item1" :value="item1"></el-option>
          </span>
         </el-select>
        </el-form-item>
       </div>
 </el-form>

动态生成表格的行和列,主要是要求后端返回的数据格式,根据数据来动态渲染

注意点:这里两个数组 :    表格字段数据: titleData: [],   表格详细数据: tables: [], 数据通过字段来查找/渲染成表格的

<template>
  <div class="boxShadow">
   <div style="margin-top: 20px"> 
    <el-table
     :data="tables"
     ref="multipleTable"
     tooltip-effect="dark"
     style="width: 100%"
     @selection-change='selectArInfo'>
     <el-table-column type="selection" width="45px"></el-table-column>
     <el-table-column label="序号" width="62px" type="index">
     </el-table-column>
     <template v-for='(col) in titleData'>
      <el-table-column
       sortable
       :show-overflow-tooltip="true"
       :prop="col.dataItem"
       :label="col.dataName"
       :key="col.dataItem"
       width="124px">
      </el-table-column>
     </template>
     <el-table-column label="操作" width="80" align="center">
      <template slot-scope="scope">
       <el-button size="mini" class="del-com" @click="delTabColOne()" ><i class="iconfont icon-shanchu"></i></el-button>
      </template>
     </el-table-column>
    </el-table>
   </div>
  </div>
 </template>

 data () {
    return {
     tables: [{
      xiaoxue: '福兰',
      chuzhong: '加芳',
      gaozhong: '蒲庙',
      daxue: '西安',
      yanjiusheng: '西安',
      shangban: '北京'
     }, {
      xiaoxue: '南坊',
      chuzhong: '礼泉',
      gaozhong: '礼泉',
      daxue: '西安',
      yanjiusheng: '西安',
      shangban: '南坊'
     }, ],
     titleData: [{
      dataItem: 'xiaoxue',
      dataName: '小学'
     }, {
      dataItem: 'chuzhong',
      dataName: '初中'
     }, {
      dataItem: 'gaozhong',
      dataName: '高中'
     }, {
      dataItem: 'daxue',
      dataName: '大学'
     }, {
      dataItem: 'yanjiusheng',
      dataName: '研究生'
     }, {
      dataItem: 'shangban',
      dataName: '上班'
     }]
    }

总结

以上所述是小编给大家介绍的vue+element创建动态的form表单及动态生成表格的行和列,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
iframe的父子窗口之间的对象相互调用基本用法
Sep 03 Javascript
jQuery实现跟随鼠标运动图层效果的方法
Feb 02 Javascript
JavaScript实现汉字转换为拼音的库文件示例
Dec 22 Javascript
微信小程序之拖拽排序(代码分享)
Jan 21 Javascript
深入理解vue.js中$watch的oldvalue与newValue
Aug 07 Javascript
详解如何用模块化的方式写vuejs
Dec 16 Javascript
vue-cli监听组件加载完成的方法
Sep 07 Javascript
微信小程序的mpvue框架快速上手指南
May 15 Javascript
JS图片预加载三种实现方法解析
May 08 Javascript
javascript实现移动端红包雨页面
Jun 23 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
Oct 28 Javascript
解决vue初始化项目一直停在downloading template的问题
Nov 09 Javascript
Node 搭建一个静态资源服务器的实现
May 20 #Javascript
vue+element实现打印页面功能
May 20 #Javascript
vue+element实现表单校验功能
May 20 #Javascript
javascript的this关键字详解
May 20 #Javascript
小程序实现新用户判断并跳转激活的方法
May 20 #Javascript
node实现socket链接与GPRS进行通信的方法
May 20 #Javascript
JS求1到任意数之间的所有质数的方法详解
May 20 #Javascript
You might like
谈谈PHP的输入输出流
2007/02/14 PHP
PHP获取当前url的具体方法全面解析
2013/11/26 PHP
php计算两个坐标(经度,纬度)之间距离的方法
2015/04/17 PHP
PHP使用递归生成文章树
2015/04/21 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
2018/10/12 PHP
JavaScript对数字的判断与处理实例分析
2015/02/02 Javascript
浅谈利用JavaScript进行的DDoS攻击原理与防御
2015/06/04 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
2015/07/06 Javascript
浅谈JS函数节流防抖
2017/10/18 Javascript
nodejs通过钉钉群机器人推送消息的实现代码
2019/05/05 NodeJs
Angular4.0动画操作实例详解
2019/05/10 Javascript
JS匿名函数内部this指向问题详析
2019/05/10 Javascript
JavaScript生成一个不重复的ID的方法示例
2019/09/16 Javascript
javascript刷新父页面方法汇总详解
2019/10/10 Javascript
解决vue+router路由跳转不起作用的一项原因
2020/07/19 Javascript
在vscode 中设置 vue模板内容的方法
2020/09/02 Javascript
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
python实现的DES加密算法和3DES加密算法实例
2015/06/03 Python
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
python不换行之end=与逗号的意思及用途
2017/11/21 Python
Python处理菜单消息操作示例【基于win32ui模块】
2018/05/09 Python
Django框架自定义session处理操作示例
2019/05/27 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
Regatta官网:英国最受欢迎的户外服装和鞋类品牌
2019/05/01 全球购物
以实惠的价格轻松租车,免费取消:Easyrentcars
2019/07/16 全球购物
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
学前教育求职自荐信范文
2013/12/25 职场文书
优秀党员获奖感言
2014/02/18 职场文书
社团活动总结范文
2014/04/26 职场文书
小学课外阅读总结
2014/07/09 职场文书
禁毒宣传活动总结
2014/08/26 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
感谢信格式范文
2015/01/22 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
Nginx 过滤静态资源文件的访问日志的实现
2021/03/31 Servers