vue+element-ui中的表單驗證(電話等等)


1.

2.

3.

 

============================================================上代碼=============================

===>本頁面的vue源碼:

<template>
<div>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="活動名稱" prop="name">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="電話" prop="phone">
<el-input v-model.number="ruleForm.phone" ></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('ruleForm')">立即創建</el-button>
<el-button @click="resetForm('ruleForm')">重置</el-button>
</el-form-item>
</el-form>

</div>

</template>
<script>
//這里要俺需要引入,我不是一個對象
import {isvalidPhone} from '../../../config/validate'
//定義一個全局的變量,誰用誰知道
var validPhone=(rule, value,callback)=>{
if (!value){
callback(new Error('請輸入電話號碼'))
}else if (!isvalidPhone(value)){
callback(new Error('請輸入正確的11位手機號碼'))
}else {
callback()
}
}

export default {
data() {
return {
ruleForm: {
name: '',
phone:''
},
rules: {
name: [
{ required: true, message: '請輸入活動名稱', trigger: 'blur' },
{ min: 3, max: 5, message: '長度在 3 到 5 個字符', trigger: 'blur' }
],

phone: [
{ required: true, trigger: 'blur', validator: validPhone }//這里需要用到全局變量
]
}
};
},
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();
}
}
}

</script>
========================================================================================================================
 
        
validate.js文件的源碼:

// 手機號驗證
export function isvalidPhone(str) {
const reg = /^1[3|4|5|7|8][0-9]\d{8}$/
return reg.test(str)
}
====其他的驗證就自己寫了=====

重點就是自己寫規則,然后引入,element的自己驗證有的不全,就像電話號碼一樣

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM