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循环渲染。通过添加数组实现动态添加表单项

相关推荐
Bigger2 小时前
Tauri (26)——托盘图标总对不上系统主题?一行 Template Image 搞定
前端·rust·app
kyriewen5 小时前
面试官问你:“AI 能写 80% 的代码了,公司为什么还需要你?”
前端·javascript·面试
甲维斯5 小时前
又升级咯!坦克大战2026,科技与复古并存!
前端·人工智能·游戏开发
搬砖的码农8 小时前
(08)为什么我的 Agent 一跑后台服务就卡死
前端·agent·ai编程
飘尘8 小时前
前端转全栈(Java 后端)必须要知道的:开发中的锁机制与分布式并发控制
前端·后端·全栈
亲亲小宝宝鸭8 小时前
前端性能监控:web-vitals
前端·性能优化·监控
前端切图崽_小郭8 小时前
虚拟滚动:静态 vs 动态的核心差异与实现?
vue.js
陆枫Larry8 小时前
可滚动页面背景填不满:`height: 100vh` vs `min-height: 100vh`
前端
Patrick_Wilson8 小时前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员