最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue表單自定義校驗規(guī)則介紹

 更新時間:2018年08月28日 11:00:28   作者:A_小鵬  
今天小編就為大家分享一篇vue表單自定義校驗規(guī)則介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

如下所示:

<div id="app">
<el-form :model="ruleForm2" :rules="rules2" ref="ruleForm2" label-width="100px" class="demo-ruleForm">
 <el-form-item label="密碼" prop="pass">
  <el-input type="password" v-model="ruleForm2.pass" auto-complete="off"></el-input>
 </el-form-item>
 <el-form-item label="確認密碼" prop="checkPass">
  <el-input type="password" v-model="ruleForm2.checkPass" auto-complete="off"></el-input>
 </el-form-item>
 <el-form-item label="年齡" prop="age">
  <el-input v-model.number="ruleForm2.age"></el-input>
 </el-form-item>
 <el-form-item>
  <el-button type="primary" @click="submitForm('ruleForm2')">提交</el-button>
  <el-button @click="resetForm('ruleForm2')">重置</el-button>
 </el-form-item>
</el-form>
</div>
var Main = {
  data() {
   var checkAge = (rule, value, callback) => {
    if (!value) {
     return callback(new Error('年齡不能為空'));
    }
    setTimeout(() => {
     if (!Number.isInteger(value)) {
      callback(new Error('請輸入數(shù)字值'));
     } else {
      if (value < 18) {
       callback(new Error('必須年滿18歲'));
      } else {
       callback();
      }
     }
    }, 1000);
   };
   var validatePass = (rule, value, callback) => {
    if (value === '') {
     callback(new Error('請輸入密碼'));
    } else {
     if (this.ruleForm2.checkPass !== '') {
      this.$refs.ruleForm2.validateField('checkPass');
     }
     callback();
    }
   };
   var validatePass2 = (rule, value, callback) => {
    if (value === '') {
     callback(new Error('請再次輸入密碼'));
    } else if (value !== this.ruleForm2.pass) {
     callback(new Error('兩次輸入密碼不一致!'));
    } else {
     callback();
    }
   };
   return {
    ruleForm2: {
     pass: '',
     checkPass: '',
     age: ''
    },
    rules2: {
     pass: [
      { validator: validatePass, trigger: 'blur' }
     ],
     checkPass: [
      { validator: validatePass2, trigger: 'blur' }
     ],
     age: [
      { validator: checkAge, trigger: 'blur' }
     ]
    }
   };
  },
  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();
   }
  }
 }
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')

vue2.X+elementUI表單自定義驗證方法

<template>
 <div class="taxi-appointment-dairen">
  <el-form :model="ruleForm" :rules="rules" ref="ruleForm">
   <div class="dairen-input">
    <el-form-item>
     <el-input
      v-model="ruleForm.name"
      placeholder="請輸入乘車人姓名(選填)">
     </el-input>
    </el-form-item>
    <i class="fa fa-user fa-2x"></i>
   </div>
   <div class="dairen-input">
    <el-form-item prop="number">
     <el-input
      v-model="ruleForm.number"
      placeholder="請輸入乘車人手機號碼">
     </el-input>
    </el-form-item>
    <i class="fa fa-mobile-phone fa-2x"></i>
   </div>
   <div class="popover-btn">
    <el-button @click="submitForm('ruleForm')" type="primary">確定</el-button>
   </div>
  </el-form>
 </div>
</template>
<script>
 export default {
  data () {
   var ruleNumber = (rule, value, callback) => {
    var myreg = /^[1][3,4,5,7,8][0-9]{9}$/;
    if (value === '') {
     callback(new Error('請輸入乘車人手機號碼'));
    } else if(!myreg.test(value)) {
     callback(new Error('請輸入正確乘車人手機號碼'));
    }else {
     callback();  //重點在這 如果在驗證通過后不添加callback()函數(shù)在驗證時是條件會為false
    }
   };
   return {
    ruleForm: {
     name: '',
     number: ''
    },
    rules: {
     number: [{ validator: ruleNumber, trigger: 'blur' }]
    }
   }
  },
  methods: {
   submitForm (formName) {
    this.$refs[formName].validate((valid) => {
     if (valid) {   //在驗證通過時時不返回callback()時 這一步進不來
      console.log(valid)
     } else {
      return false
     }
    });
   }
  }
 }
</script>

以上這篇vue表單自定義校驗規(guī)則介紹就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • vue+elementUI多表單同時提交及表單校驗最新解決方案

    vue+elementUI多表單同時提交及表單校驗最新解決方案

    假設有一個頁面,需要分三步填寫三個表單,且每個表單位于獨立的組件中,然后最后保存同時提交,如何進行表單必填項校驗,下面小編給大家介紹vue+elementUI多表單同時提交及表單校驗最新解決方案,感興趣的朋友一起看看吧
    2024-03-03
  • Vue路由的模塊自動化與統(tǒng)一加載實現(xiàn)

    Vue路由的模塊自動化與統(tǒng)一加載實現(xiàn)

    這篇文章主要介紹了Vue路由的模塊自動化與統(tǒng)一加載實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • elementUI組件el-dropdown(踩坑)

    elementUI組件el-dropdown(踩坑)

    本文主要介紹了elementUI組件el-dropdown的一些坑,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • vuejs實現(xiàn)標簽選項卡動態(tài)更改css樣式的方法

    vuejs實現(xiàn)標簽選項卡動態(tài)更改css樣式的方法

    這篇文章主要介紹了vuejs實現(xiàn)標簽選項卡-動態(tài)更改css樣式的方法,代碼分為html和js兩部分,需要的朋友可以參考下
    2018-05-05
  • Vue項目中ESLint配置超全指南(VScode)

    Vue項目中ESLint配置超全指南(VScode)

    ESLint是一個代碼檢查工具,用來檢查你的代碼是否符合指定的規(guī)范,下面這篇文章主要給大家介紹了關于Vue項目中ESLint配置(VScode)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-04-04
  • 在vue中使用echarts的方法以及可能遇到的問題

    在vue中使用echarts的方法以及可能遇到的問題

    Echarts是一個與框架無關的JS圖表庫,但是它基于Js,這樣很多框架都能使用它,下面這篇文章主要給大家介紹了關于在vue中使用echarts的方法以及可能遇到的問題的相關資料,需要的朋友可以參考下
    2022-09-09
  • Vue路由與a標簽鏈接錨點發(fā)生沖突問題及解決

    Vue路由與a標簽鏈接錨點發(fā)生沖突問題及解決

    這篇文章主要介紹了Vue路由與a標簽鏈接錨點發(fā)生沖突問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • VUE django 跨域、csrf令牌的問題

    VUE django 跨域、csrf令牌的問題

    在Vue和Django進行前后分離開發(fā)時,經(jīng)常會遇到跨域和CSRF令牌驗證問題,本文詳細介紹了如何在Django后端設置視圖獲取CSRF令牌,并在Vue前端進行配置以確保安全的數(shù)據(jù)交互,文章提供了后端視圖創(chuàng)建、settings配置以及前端axios請求封裝的具體方法
    2024-09-09
  • vue指令v-html使用過濾器filters功能實例

    vue指令v-html使用過濾器filters功能實例

    在本篇文章里我們給大家整理的是關于vue指令v-html使用過濾器filters功能的實例內(nèi)容,需要的朋友們學習下。
    2019-10-10
  • ant design的table組件實現(xiàn)全選功能以及自定義分頁

    ant design的table組件實現(xiàn)全選功能以及自定義分頁

    這篇文章主要介紹了ant design的table組件實現(xiàn)全選功能以及自定義分頁,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11

最新評論

武平县| 沅江市| 介休市| 南靖县| 义马市| 嘉祥县| 大关县| 天等县| 射洪县| 合阳县| 天气| 成安县| 新闻| 鱼台县| 大安市| 潞城市| 潞西市| 白水县| 云梦县| 喀喇沁旗| 星座| 北碚区| 曲阜市| 桦甸市| 修文县| 新密市| 乌拉特后旗| 元谋县| 鄢陵县| 同仁县| 石渠县| 新昌县| 乐山市| 乌兰浩特市| 南皮县| 阳东县| 彰化县| 丹巴县| 彭水| 临清市| 涟源市|