el-form表单同时校验多组数据(姓名电话号码)(pattern写法)

form表单多层数据结构校验以及form表单和table表格校验结合完整案例,超级详细,直接复制粘贴,拿来就用_无围之解的博客-CSDN博客form表单和table表格校验,多层数据结构https://blog.csdn.net/jieweiwujie/article/details/127240005?spm=1001.2014.3001.5501

 el-form表单同时校验多组数据 姓名电话号码

<template>
  <div class="content-el-form">
    <div style="margin-left: 0px">
      el-form表单同时校验多组数据
      <el-button type="primary" @click="clickFun()" size="mini">添加</el-button>
    </div>
    <el-form
      :model="ruleForm"
      :rules="rules"
      ref="ruleForm"
      label-width="100px"
      class="demo-ruleForm"
    >
      <div v-for="(item, index) in ruleForm.data" :key="index">
        <div
          style="
            display: flex;
            align-items: center;
            border: 1px solid #dedede;
            width: 600px;
            padding: 10px;
          "
        >
          <div>
            <el-form-item
              label="姓名"
              :prop="'data.' + index + '.name'"
              :rules="rules.name"
            >
              <el-input
                v-model="item.name"
                placeholder="请输入内容"
                size="mini"
              ></el-input>
            </el-form-item>
            <el-form-item
              label="电话"
              :prop="'data.' + index + '.phone'"
              :rules="rules.phone"
            >
              <el-input
                size="mini"
                v-model="item.phone"
                placeholder="请输入内容"
              ></el-input>
            </el-form-item>
          </div>
          <div style="margin-left: 15px"></div>
        </div>
      </div>
      <el-form-item
        label="活动区域"
        prop="region"
        style="margin-top: 20px; margin-bottom: 20px"
      >
        <el-select v-model="ruleForm.region" placeholder="请选择活动区域">
          <el-option label="区域一" value="shanghai"></el-option>
          <el-option label="区域二" value="beijing"></el-option>
        </el-select>
      </el-form-item>

      <el-form-item style="margin-top: 22px">
        <el-button type="primary" @click="submitForm('ruleForm')"
          >立即创建</el-button
        >
        <el-button @click="resetForm('ruleForm')">重置</el-button>
      </el-form-item>
    </el-form>
  </div>
</template>
<script>
export default {
  data() {
    return {
      selectedList: [],
      ruleForm: {
        region: "",
        data: [{ name: "", phone: "" }],
      },
      rules: {
        name: [{ message: "请输入活动名称", required: true, trigger: "blur" }],
        phone: [{ message: "请输入电话", required: true, trigger: "blur" }],
        region: [{ required: true, message: "请选择", trigger: "change" }],
      },
    };
  },
  methods: {
    submitForm(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          alert("submit!");
        } else {
          console.log("error submit!!");
          return false;
        }
      });
    },
    resetForm(formName) {
      this.$refs[formName].resetFields();
    },
    clickFun() {
      this.ruleForm.data.push({ name: "", phone: "" });
    },
  },
};
</script>
<style scoped lang="scss">
.content-el-form {
  margin-left: 12px;
  margin-top: 12px;
}
</style>

pattern写法

 rules: [{
            required: true,
            message: '请选择服务类型',
            trigger: "blur"
          },
          {
            min: 3,
            max: 5,
            message: "长度在 3 到 5 个字符",
            trigger: "blur"
          },
          {
            pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
            message: '请输入数字,保留2位小说',
          },
        ],
      },

下面是带表格的案例

form表单多层数据结构校验以及form表单和table表格校验结合完整案例,超级详细,直接复制粘贴,拿来就用_无围之解的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端小云儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值