vue中的rules表单校验规则使用方法 :rules=“rules“

一、el-form里面必写属性值

:ref="dataForm" // 提交表单时进行校验

:rules="rules" // return 下的校验规则

:model="userForm" // 绑定表单的值

html 复制代码
<el-form
  ref="dataForm"     // 必写属性值
  :rules="rules"     // 必写属性值
  :model="userForm"  // 必写属性值
  label-position="left"
  label-width="100px"
>
  <el-row>
    <el-col :span="12">
      <el-form-item
        label="充值金额"
        prop="amount"  // 必写属性值
      >
        <el-input
          v-model="userForm.amount"  // 必写属性值
          placeholder="请输入充值金额"
        ></el-input>
      </el-form-item>
    </el-col>
  </el-row> 
</el-form>
<div slot="footer" class="dialog-footer" align="center">
  <el-button @click="dialogFormVisible = false">返回</el-button>
  <el-button type="primary" @click="Recharge()" >
    提交
  </el-button>
</div>

二、:ref 提交表单时进行校验

点击提交时,会先对表单的值进行校验判断,校验通过后,再进行后续操作。

java 复制代码
Recharge() {
  this.$refs['dataForm'].validate((valid) => {
    if (valid) {
      // 校验通过、调充值接口的逻辑操作
  }
})

三、:rules 校验规则

el-form-item 里面使用 prop 属性绑定规则

<el-form-item label="充值金额" prop="amount"> ... ... </el-form-item>
required:显示输入框为选填或必填项;

message:提示信息;

pattern:正则表达式;

trigger:触发事件 => 一般blur用于input、chang用于select,picker等;

java 复制代码
data() {
  return { 
    rules: {
      amount: [
        { required: true, message: '充值金额不能为空', trigger: 'blur' },
        {
          pattern: /^\d+(\.\d{1,1})?$/,
          message: '金额为数字类型且最多保留1位小数',
          trigger: 'blur',
        },
      ],
    },
  }
},

四、:model 绑定表单的值

el-input 里面使用 v-model 绑定表单值

<el-input v-model="userForm.amount" ></el-input>

java 复制代码
data() {
  return {
    userForm: {
      amount: '',
    }, 
  }
},
 

问题:

校验未通过,关闭弹窗再打开还存在的问题:

复制代码
 this.dialogFormVisible = true
 this.$nextTick(() => {
   this.$refs['dataForm'].clearValidate()
 })
相关推荐
可触的未来,发芽的智生3 分钟前
触摸未来2025-11-09:万有力,图论革命
javascript·人工智能·python·程序人生·自然语言处理
暖木生晖1 小时前
Javascript函数之匿名函数以及立即执行函数的使用方法?
开发语言·javascript·ecmascript
一 乐1 小时前
医疗管理|医院医疗管理系统|基于springboot+vue医疗管理系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·医疗管理系统
光影少年1 小时前
React Native第六章
javascript·react native·react.js
晓得迷路了1 小时前
栗子前端技术周刊第 105 期 - npm 安全性加强、Storybook 10、htmx 4.0 Alpha 1...
前端·javascript·npm
G018_star sky♬2 小时前
原生JavaScript实现输入验证的界面
javascript·css·css3
火龙谷2 小时前
DrissionPage遇到iframe
开发语言·前端·javascript
千里马-horse2 小时前
搭建 React Native 库
javascript·react native·react.js·native library
艾小码2 小时前
从零到一:这篇JavaScript指南让你成为独立开发者
前端·javascript