您好,登录后才能下订单哦!
这篇文章主要为大家展示了“vue+element如何创建动态form表单”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue+element如何创建动态form表单”这篇文章吧。
动态创建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 > <el-table :data="tables" ref="multipleTable" tooltip-effect="dark" @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表单”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。