elementplus表单验证确认密码
时间: 2024-10-24 12:03:53 浏览: 69
Element Plus是一个基于Vue.js的UI组件库,它提供了一个强大的表单组件,包括用于验证的特性。在Element Plus的表单验证中,确认密码通常是在设置用户注册或修改密码时需要的一项验证,目的是保证两次输入的密码一致。
要实现在Element Plus中对确认密码的验证,你可以这样做:
1. 使用`el-form`组件包含两个密码输入框,比如`el-input`,并给每个输入框一个`type="password"`属性。
2. 添加`ref`属性,分别给这两个输入框命名,例如`password`和`confirmPassword`。
3. 在表单的验证规则里,创建一个自定义验证函数,检查`password`和`confirmPassword`是否相等。这可以使用`v-model`绑定的数据,然后在`watch`或`computed`属性中进行比较。
4. 将这个验证规则添加到表单的验证规则数组`rules`中,通常像这样设置:
```html
<template>
<el-form :model="form" ref="form" @submit.prevent>
<!-- ... -->
<el-form-item label="密码">
<el-input v-model="form.password" type="password"></el-input>
</el-form-item>
<el-form-item label="确认密码">
<el-input v-model="form.confirmPassword" type="password"></el-input>
</el-form-item>
<el-form-item rules="['required', { validator: validatePasswordMatch } ]">
<span slot="message">密码不匹配</span>
</el-form-item>
<!-- ... -->
<el-form-item>
<el-button type="primary" @click="handleSubmit">提交</el-button>
</el-form-item>
</el-form>
</template>
<script>
export default {
data() {
return {
form: {
password: '',
confirmPassword: ''
},
// 自定义验证函数
validatePasswordMatch(currentValue, oldValue, rules, callback) {
if (currentValue !== oldValue) {
callback(new Error('密码不匹配'));
} else {
callback();
}
}
};
},
methods: {
handleSubmit() {
this.$refs.form.validate(valid => {
if (valid) {
// 提交表单...
} else {
console.log('表单验证失败');
}
});
}
}
};
</script>
```
阅读全文