element ui form添加校验规则

javascript 复制代码
     <el-form :rules="rules" ref="ruleForm" label-position="top" :model="form" label-width="100px"
                class="basicform">
                <el-row :gutter="24">
                    <el-col :span="24">
                        <el-form-item label="手机号:" prop="name">
                            <el-input v-model="form.name" placeholder="请输入"></el-input>
                        </el-form-item>
                    </el-col>
                </el-row>

                <el-row :gutter="24">
                    <el-col :span="12">
                        <el-form-item label="截止日期:">
                            <el-date-picker v-model="form.date" type="date" placeholder="请选择">
                            </el-date-picker>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="负责人:" prop="person">
                            <el-select v-model="form.person" placeholder="请选择">
                                <el-option label="区域一" value="shanghai"></el-option>
                                <el-option label="区域二" value="beijing"></el-option>
                            </el-select>
                        </el-form-item>
                    </el-col>
                </el-row>
                <el-row :gutter="24">
                    <el-col :span="24">
                        <el-form-item label="描述:" class="namehuod">
                            <el-input type="textarea" v-model="form.ison"></el-input>
                        </el-form-item>
                    </el-col>
                </el-row>



            </el-form>
  <el-row :gutter="24" style="width: calc(100% - 0px);margin: 0 auto;">
                <el-col :span="24" style="border-top: 1px solid #ccc;padding: 10px 0;">
                    <el-button size="small" type="primary" @click="submitFnc()"
                        style="float: right;margin-right: 15px;">确认</el-button>
                    <el-button size="small" @click="resetForm" style="float: right;margin-right: 15px;">取消</el-button>
                </el-col>
            </el-row>
javascript 复制代码
  data() {
        return {
            form: {

            },
            rules: {
                name: [
                    { required: true, message: '请输入手机号', trigger: 'blur' },
                    { validator: this.isPhone, trigger: 'blur' }
                ],
                person: [
                    { required: true, message: '请选择负责人', trigger: 'change' }
                ]
            }

        };
    },
javascript 复制代码
 methods: {
        isPhone(rule, value, callback) {
            if (!/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
                .test(value)) {
                return callback(new Error('请输入正确的手机号'));
            }
            callback();
        },
submitFnc() {
            this.$refs.ruleForm.validate((valid) => {
                if (valid) {
                  console.log("校验通过")
                } else {

                    return false;
                }
            });

        },
 resetForm() {
//清除校验
            this.$refs.ruleForm.resetFields();
        },
}

添加校验规则有多中方法,其他方式可参考ele ui 官网

相关推荐
香蕉可乐荷包蛋12 分钟前
浅入ES5、ES6(ES2015)、ES2023(ES14)版本对比,及使用建议---ES6就够用(个人觉得)
前端·javascript·es6
未来之窗软件服务1 小时前
资源管理器必要性———仙盟创梦IDE
前端·javascript·ide·仙盟创梦ide
liuyang___2 小时前
第一次经历项目上线
前端·typescript
西哥写代码2 小时前
基于cornerstone3D的dicom影像浏览器 第十八章 自定义序列自动播放条
前端·javascript·vue
清风细雨_林木木2 小时前
Vue 中生成源码映射文件,配置 map
前端·javascript·vue.js
FungLeo3 小时前
node 后端和浏览器前端,有关 RSA 非对称加密的完整实践, 前后端匹配的代码演示
前端·非对称加密·rsa 加密·node 后端
雪芽蓝域zzs3 小时前
JavaScript splice() 方法
开发语言·javascript·ecmascript
不灭锦鲤3 小时前
xss-labs靶场第11-14关基础详解
前端·xss
不是吧这都有重名3 小时前
利用systemd启动部署在服务器上的web应用
运维·服务器·前端
霸王蟹3 小时前
React中巧妙使用异步组件Suspense优化页面性能。
前端·笔记·学习·react.js·前端框架