ElementUI动态添加表单项

昨天感冒发烧了,脑子不好使。在实现这个动态表单项时一直报错脑瓜子嗡嗡的!

不过好在昨天休息好了,今天起来趁脑瓜子好使,一会就弄好了。

这里记录一下

html 复制代码
        <el-form-item
            v-for="(classId,index) in addFom.classIds"
            :label="`班级${index+1}`">
            <el-row :gutter="12">
              <el-col :span="12">
                <el-input v-model="classId.classId"></el-input>
              </el-col>
              <el-col :span="5">
                <el-button type="danger" icon="el-icon-delete" circle @click="removeClassId(index)"/>
              </el-col>
            </el-row>
          </el-form-item>
          <el-form-item>
            <el-button type="success">提交</el-button>
            <el-button @click="addClassId" :disabled="disabled">添加班级</el-button>
          </el-form-item>
javascript 复制代码
  data(){
    return{
       addFom: {
        teaName: '',
        teaSex: true,
        teaType: true,
        teaPhone: '',
        seniority: 0,
        classIds: [
          { classId: '' }
        ]
      }
    }
  }


/* 动态添加表单行 */
    addClassId() {
      this.addFom.classIds.length < 6 ? this.addFom.classIds.push({ classId: '' }) : this.disabled = true
    },
    /* 动态删除表单行 */
    removeClassId(index) {
      this.addFom.classIds.splice(index, 1)
      this.disabled = false
    }

总结

其实就是利用了vue的v-for循环渲染。通过添加数组实现动态添加表单项

相关推荐
童先生16 分钟前
Nginx + Vue/React 前端 + API:防止路径混淆漏洞与跨域问题实战分享
前端·vue.js·nginx
Stringzhua2 小时前
Vue数据的变更操作与表单数据的收集【6】
前端·javascript·vue.js
万少3 小时前
可可图片编辑 HarmonyOS 上架应用分享
前端·harmonyos
你的人类朋友3 小时前
git常见操作整理(持续更新)
前端·git·后端
无羡仙3 小时前
Webpack 核心实战:从零搭建支持热更新与 Babel 转译的现代前端环境
前端·webpack·前端框架
乐~~~3 小时前
el-date-picker type=daterange 日期范围限制
javascript·vue.js·elementui
你的人类朋友3 小时前
git中的Fast-Forward是什么?
前端·git·后端
初遇你时动了情3 小时前
uniapp vue3 ts自定义底部 tabbar菜单
前端·javascript·uni-app
JarvanMo4 小时前
天塌了?Flutter工程总监跑去苹果了?
前端
烛阴5 小时前
掌握 TypeScript 的边界:any, unknown, void, never 的正确用法与陷阱
前端·javascript·typescript