首页 > 其他分享 >element使用组件el-form自动定位到未填写的必填条目

element使用组件el-form自动定位到未填写的必填条目

时间:2023-04-12 16:11:41浏览次数:36  
标签:el Object 未填写 form dom object 条目 必填

问题:在form表单el-form中经常会出现表单条目比较多的问题,而且在提交的时候需要校验表单并且定位到相应的条目位置。

解决:

html:

<el-form ref="form" :model="form" :rules="rules" label-width="140px">
    <el-form-item label="规则名称" prop="ruleName" ref="ruleName">
        <el-input v-model="form.ruleName" clearable placeholder="请输入规则名称" />
    </el-form-item>
    ...
</el-form>

其中el-form-item中ref是关键定位点。

js:

/**
    * @description: 提交
    * @return {*}
    */
submitForm() {
    this.$refs['form'].validate((valid, object) => {
        if (valid) {
            console.log('验证通过')
        } else {
          let str = [];
          for (let key in object) {
            object[key].map((item) => {
              str.push(item.message);
            });
            let dom = this.$refs[Object.keys(object)[0]];
            if (Object.prototype.toString.call(dom) !== '[object Object]') {
              dom = dom[0];
              break; //结束语句并跳出语句,进行下个语句执行
            }
            // 定位代码
            dom.$el.scrollIntoView({
              block: 'center',
              behavior: 'smooth'
            });
          }
          // 页面提示未通过校验字段项,并以逗号分隔
          this.$message.error(str[0]);
        }
    });
}

 

 

 这样就可以实现定位到未填写的条目了.

标签:el,Object,未填写,form,dom,object,条目,必填
From: https://www.cnblogs.com/zaijin-yang/p/17310147.html

相关文章

  • Cannot access defaults field of Properties
    webxmlattributeisrequired(orpre-existingWEB-INF/web.xmlifexecutinginupdatemode)如果遇到IDEA在运行maven打war的时候,提示报错:CannotaccessdefaultsfieldofProperties解决办法是要在pro.xml文件下添加以下插件,才可以打包war包打包jar包不添加也是没有......
  • Excel 2010 快捷键
    Excel2010中的键盘快捷方式全部隐藏本文介绍按键提示的定义以及它们用于访问功能区的方式。本文还列出了Ctrl组合快捷键、功能键和一些其他MicrosoftExcel常用快捷键。 注释   如果您使用的是MicrosoftExcelStarter2010,请注意,并非所有列出的Excel功能在Excel......
  • 解决vue-elment-admin mock转在线接口地址跨域问题
    devServer:{  port:port,  open:true,  overlay:{   warnings:false,   errors:true  },  //before:require('./mock/mock-server.js')  proxy:{//[process.env.VUE_APP_BASE_API]  vue中env.文件中配置的api名称......
  • excel柱形图设置未达目标值的显示红色
    原始图形  1、目标左侧添加两列成绩值,成绩达标列输入函数=IF(G2>=F2,G2,NA())并向下填充;成绩不达标列输入函数=IF(G2<F2,G2,NA())并向下填充;达成率前置到目标前,重新生成图表  3、右键设置图表区域格式,设置系列重叠100%并设置成绩不达标的为红色即可 此方式仅适合只......
  • Vue3+element-plus封装文字超出一行,省略号显示,鼠标悬浮展示全部
    1.组件封装<template><el-tooltipeffect="dark":disabled="isShowTooltip":content="content"placement="top"><p:class="['line1',className]"@mouseover="onMouseOver(refNa......
  • UVa 10049 Self-describing Sequence (自描述序列&二分递推)
    10049-Self-describingSequenceTimelimit:3.000secondshttp://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=34&page=show_problem&problem=990SolomonGolomb's self­describingsequence  istheonlynon­decreas......
  • LargeKernel3D:在3D稀疏CNN中使用大卷积核
    前言 2DCNN使用大卷积代替小卷积,增大了卷积核的感受野,捕获到的特征更偏向于全局,效果也得到了提升,这表明较大的kernelsize很重要。但是,当直接在3DCNN中应用大卷积核时,那些在2D中成功的模块设计在3D网络效果不好,例如深度卷积。为了应对这一重要挑战,本文提出了空间分区......
  • HttpHelper
    publicclassHttpHelpe{publicstaticasyncTask<T>GetAsync<T>(stringurl,stringpostData=null,stringcontentType=null,inttimeOut=30,Dictionary<string,string>headers=null){returnawaitRequestAsync<T......
  • 动力节点王鹤SpringBoot3笔记——第七章 视图技术Thymeleaf
    7视图技术ThymeleafThymeleaf是一个表现层的模板引擎,一般被使用在Web环境中,它可以处理HTML,XML、JS等文档,简单来说,它可以将JSP作为JavaWeb应用的表现层,有能力展示与处理数据。Thymeleaf可以让表现层的界面节点与程序逻辑被共享,这样的设计,可以让界面设计人员、业......
  • UVa 457 Linear Cellular Automata (water ver.)
    457-LinearCellularAutomataTimelimit:3.000secondshttp://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=94&page=show_problem&problem=398AbiologistisexperimentingwithDNAmodificationofbacterialcolonies......