Element通过v-for循环渲染的form表单校验

这篇具有很好参考价值的文章主要介绍了Element通过v-for循环渲染的form表单校验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

需求:有个表单信息是v-for渲染的,例如下图,通过循环遍历实现新增和删除模块,按照平时的写法实现校验,是不能实现我们想要的效果,根据这个需求,我找到了一个解决方法

Element通过v-for循环渲染的form表单校验,vue,前端,javascript,html 

1.HTML 

  <el-form ref="form" :model="form" :rules="rules" label-width="110px" >
      <div v-for="(item,index) in this.form.trucksList">
        <div class="num">{{index+1}}.</div>
        <div class="flex">
          <div class="info">
            <el-form-item label="服务商"   :prop="'trucksList.' + index+'.providerType'" 
                :rules="rules.providerType">
              <el-select v-model="item.providerType" placeholder="请选择">
                <el-option
                  v-for="item in options"
                  :key="item.value"
                  :label="item.label"
                  :value="item.label">
                </el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="卡车公司"  :prop="'trucksList.' + index+'.truckCompany'" 
               :rules="rules.truckCompany">
              <el-input
                v-model="item.truckCompany"
                placeholder="请输入卡车公司"
              />
            </el-form-item>
            <el-form-item label="预估运输时间" :prop="'trucksList.' + 
                index+'.transportDay'" :rules="rules.transportDay">
              <el-input
                v-model="item.transportDay "
                placeholder="请输入预估运输时间"
              />
            </el-form-item>
            <el-form-item label="总价" :prop="'trucksList.' + index+'.priceTotal'" 
                :rules="rules.priceTotal">
              <el-input
                v-model="item.priceTotal "
                placeholder="请输入总价"
              />
            </el-form-item>
          </div>
        </div>
      </div>
</el-form>

 2.JS

data(){
    return{
      // 报价表单参数
      form: {
        trucksList:[
          {
            providerType:'',//服务商
            truckCompany:'',//卡车公司
            transportDay:'',//预估运输时间
            priceTotal:'',//总价
            orderNo:" ",//平台订单号
          }
        ],
      },
      // 表单校验
      rules:{
        providerType:[
          { required: true, message: "请选择服务商", trigger: "blur" }
        ],
        truckCompany:[
          { required: true, message: "请输入卡车公司", trigger: "blur" }
        ],
        transportDay:[
          { required: true, message: "请输入预估运输时间", trigger: "blur" }
        ],
        priceTotal:[
          { required: true, message: "请输入总价", trigger: "blur" }
        ],   
      },
   
    }
  },

 注:

1.循环的数据中,每个el-form-item都写rules、prop

2.rules为data中rules对象对应属性,如'rules.providerType';

Element通过v-for循环渲染的form表单校验,vue,前端,javascript,html 

3.prop的第一部分为data中该组遍历数据对应的数组名,此例中为form中的'trucksList';第二部分为遍历的key值变量;第三部分为form中的'trucksList'中该输入框对应的属性名;

Element通过v-for循环渲染的form表单校验,vue,前端,javascript,html

 只有以上几点写对,就可以实现循环数据的表单校验啦文章来源地址https://www.toymoban.com/news/detail-659227.html

到了这里,关于Element通过v-for循环渲染的form表单校验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • element-ui for循环生成表单时,表单校验问题

    1、静态生成的表单,校验规则是放在data中处理 2、动态表单页面,需要把规则放在el-form-item中,进行校验 注意事项: 当使用v-for循环生成表单时, :prop有格式要求 格式不对会报错 :prop=“‘appraisalTempContent.’ + index + ‘.score’” 字段说明: 1、appraisalTempContent=遍历数组的k

    2024年02月16日
    浏览(43)
  • for循环遍历的`form表单组件`rules规则校验失效问题——下拉框选择之后还是报红---亲测有效

    问题:   大概的效果就是这种, for循环选择之后还是还是报红 看文章之前 :  先检查  model  rules pops 有没有判定好 解决:    参考了他的 for循环遍历的`form表单组件`rules规则校验失效问题——输入内容后依然提示必填,亲测有效——基础积累_a-form-model的validatefield方法循环遍

    2024年02月07日
    浏览(41)
  • el-form单个表单项校验方法;element-ui表单单个选项校验;el-form单个表单校验

    当我们使用element-ui的el-form时,想在提交表单前对其中一个表单进行验证时就可以使用element自带的方法“validateField” 如图: 使用示例

    2024年02月16日
    浏览(51)
  • element-ui的form表单校验

    form表单校验基本三步: 1、定义验证规则 在data中定义表单校验规则,一个表单项可定义多条规则,表单项规则用数组,规则为对象,required为必须填写,message为校验提示信息,trigger为校验时机,可选blur和change,分别为失去焦点和数据变化;min/max为最小与最大字符个数,v

    2024年02月11日
    浏览(61)
  • element - - - - - form表单rules初始化校验飙红?

    通过form组件属性配置解决(validate-on-rule-change=“false”)

    2024年02月13日
    浏览(48)
  • element-ui form表单校验 失败的原因

    1、没有在el-form上指定model 2、el-form-item上的prop名称不对,应当与rules中的名称一致; 3、绑定的属性没有在data中声明; 4、特别重要的一点是ruleForm(数据)和rules(校验规则)里面对应的key一定要相同,一个是数据绑定的值 另外一个是值的规则。

    2024年02月11日
    浏览(43)
  • element UI —— form表单中Radio单选框进行切换 & 表单验证rule动态校验-validator & 保存前进行form表单校验后才能上传-validate

    element UI —— form表单中Radio单选框进行切换 表单验证rule动态校验-validator 保存前进行form表单校验后才能上传-validate 1、效果图 2、代码 结构 数据

    2024年02月07日
    浏览(49)
  • vue +element UI form表单校验数组嵌套,数组对象必填校验

    使用element表单时会出现数组对象类型的数据结构并且需要必填校验 这时数组对象的检验方法就为paramJsonListRules 注意的是为了实现校验,在需要校验的el-form-item内通过自己的:rules加入对象的校验方法,例如图中想给参数值加校验则直接在相关el-form-item内加入 :rules=\\\"paramJsonLis

    2024年02月11日
    浏览(66)
  • vue3【列表渲染】v-for 详细介绍(vue中的“循环”)

    在本文之前已经有文章简单概要介绍过vue中的渲染,点击帮你快速复习👏👏,包括 条件渲染 和 列表渲染 。 二者同样重要,但是 对于项目而言,使用更多的是列表渲染,主要表现为“循环”。 下面让我们继续深入地了解列表渲染的相关内容吧~👏👏👏 我们可以使用 v-f

    2024年02月22日
    浏览(43)
  • element-ui form表单的动态rules校验

    在vue 项目中,有时候可能会用到element-ui form表单的动态rules校验,比如说选择了哪个选项,然后动态显示或者禁用等等。 我们可以巧妙的运用element-ui form表单里面form-item想的校验规则来处理(每一个form-item项都可以单独校验)。 上代码: 重点是这个: :rules=“sqyxForm.jtpslx

    2024年02月15日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包