在使用 Element UI(一个常见的 Vue UI 组件库),要给 添加表单验证,Element UI 的表单验证通常通过 Form 和 FormItem 组件以及它们的 rules 属性来实现。下面是一个例子,展示如何给联系人字段添加表单验证:
首先, Vue 组件中有一个 Form 组件,定义验证规则:
<template> <el-form :model="formData" :rules="rules" ref="form" label-width="120px"> <el-form-item label="联系人" prop="user.lxr"> <el-input v-model="formData.user.lxr" maxlength="32" placeholder="请输入联系人"></el-input> </el-form-item> <!-- 其他表单项... --> <el-form-item> <el-button type="primary" @click="submitForm('form')">提交</el-button> <el-button @click="resetForm('form')">重置</el-button> </el-form-item> </el-form>
</template> <script>
export default { data() { return { formData: { user: { lxr: '', // 联系人姓名 // 其他字段... }, // 其他表单数据... }, rules: { 'user.lxr': [ { required: true, message: '请输入联系人姓名', trigger: 'blur' }, { max: 32, message: '联系人姓名最多10位', trigger: 'blur' } ], // 其他验证规则... }, }; }, methods: { submitForm(formName) { this.$refs[formName].validate((valid) => { if (valid) { alert('提交成功!'); // 这里可以添加你的表单提交逻辑 } else { console.log('error submit!!'); return false; } }); }, resetForm(formName) { this.$refs[formName].resetFields(); }, },
};
</script>
在这个例子中,我使用了 el-form 和 el-form-item 组件来构建表单。我通过 :model 绑定 formData 对象,并通过 :rules 绑定 rules 对象来定义验证规则。每个 el-form-item 通过 prop 属性来指定它对应的表单项的数据属性(这里是 user.lxr)。
当用户尝试提交表单时,submitForm 方法会被调用,它会触发 el-form 的验证过程。如果验证通过,表单将被提交;否则,会显示相应的错误信息。