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

相关推荐
WebInfra几秒前
Rspack 2.3 发布:联手 SWC 团队带来全新编译器
前端·javascript·github
小卿噢1 小时前
同样是插 10 万行,最快的写法比最慢的快 103 倍
前端
weixin_417396831 小时前
星级酒店境外电视频道怎么合法接入?合规要点与核对清单
开发语言·前端·php·1024程序员节·综合布线
hiahiahia1231 小时前
Structured Output
前端·人工智能
FRing031 小时前
JavaScript入门到精通三十一(原型继承、原型链)
开发语言·前端·javascript
山雀~3 小时前
CSP 安全漏洞修复
前端·网络协议
console.log('npc')3 小时前
周期任务功能完整实现:CRON 编辑器 + 模板变量 + 执行历史
javascript·vue.js·编辑器
陌离3 小时前
Go-Gui:一套 无限接近 现代化UI的 GPU绘制界面组件框架
前端
咚咚咚小柒3 小时前
【前端】LangChain.js学习
前端·javascript·人工智能·typescript·langchain·vue·ai编程
2401_885885044 小时前
巴林语音通知接口如何对接?系统告警语音API接入教程
android·前端·网络·python·语音识别