vue2 + el-form表单的动态自定义的校验
在Vue 2中,使用Element UI的el-form
组件进行动态自定义验证,可以通过el-form-item
的prop
属性和rules
属性来实现。你可以在data
中定义一个验证规则对象,然后在el-form-item
中使用:prop
绑定到对应的字段上。
以下是一个简单的例子:
<template>
<el-form :model="form" :rules="rules" ref="myForm">
<el-form-item label="用户名" prop="username">
<el-input v-model="form.username"></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="form.password"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm">提交</el-button>
</el-form-item>
</el-form>
</template>
<script>
export default {
data() {
return {
form: {
username: '',
password: ''
},
rules: {
username: [
{ required: true, message: '请输入用户名', trigger: 'blur' },
{ min: 3, max: 10, message: '用户名长度在 3 到 10 个字符', trigger: 'blur' }
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 6, max: 15, message: '密码长度在 6 到 15 个字符', trigger: 'blur' }
]
}
};
},
methods: {
submitForm() {
this.$refs.myForm.validate(valid => {
if (valid) {
alert('验证通过');
} else {
console.log('验证失败');
return false;
}
});
}
}
};
</script>
在这个例子中,el-form
的:model
绑定了一个名为form
的数据对象,:rules
绑定了一个验证规则对象rules
。el-form-item
的:prop
属性则分别对应form
对象中的username
和password
字段。当用户点击提交按钮时,会触发submitForm
方法,该方法会调用this.$refs.myForm.validate
来执行表单的验证。如果验证通过,则可以执行后续的提交操作;如果验证失败,则会显示相应的错误信息。
评论已关闭