ElementUI 实现动态表单数据校验(已解决)
<template>
<el-form :model="dynamicForm" :rules="rules" ref="dynamicForm" label-width="120px">
<el-form-item label="用户名" prop="username">
<el-input v-model="dynamicForm.username"></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="dynamicForm.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 {
dynamicForm: {
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: 12, message: '密码长度在 6 到 12 个字符', trigger: 'blur' }
]
}
};
},
methods: {
submitForm() {
this.$refs.dynamicForm.validate((valid) => {
if (valid) {
alert('提交成功!');
} else {
console.log('表单验证失败!');
return false;
}
});
}
}
};
</script>
这个例子展示了如何使用Element UI的表单组件进行动态数据的验证。dynamicForm
是一个响应式数据对象,用于绑定表单的数据;rules
对象定义了数据的验证规则,它会在用户尝试提交表单时触发。如果所有的表单项都通过验证,那么会弹出一个提示框表示提交成功,否则会在控制台输出一条错误信息。
评论已关闭