使el-form-item 包裹的是一个普通的文本时也能触发校验
时间: 2024-03-08 18:46:26 浏览: 139
如果需要在 el-form-item 包裹的普通文本也能触发校验,可以通过设置 el-form-item 组件的 prop 属性 `prop` 来指定对应的表单项的 name,然后再通过设置 el-form-item 的 prop 属性 `rules` 来定义校验规则,例如:
```html
<template>
<el-form ref="form" :model="formData" :rules="formRules">
<el-form-item label="姓名" prop="name">
<template #default>
<span>王小明</span>
</template>
</el-form-item>
<el-form-item label="年龄" prop="age">
<el-input v-model="formData.age"></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 {
formData: {
name: '',
age: ''
},
formRules: {
name: [{ required: true, message: '请输入姓名', trigger: 'blur' }]
}
};
},
methods: {
submitForm() {
this.$refs.form.validate(valid => {
if (valid) {
// 校验通过,提交表单
console.log('表单校验通过,可以提交表单了');
} else {
// 校验不通过,提示错误信息
console.log('表单校验不通过,请检查表单内容');
}
});
}
}
};
</script>
```
在上面的代码中,我们在 el-form-item 中包裹了一个普通的文本 `<span>王小明</span>`,然后通过设置 el-form-item 的 prop 属性 `prop` 来指定对应的表单项的 name 为 `name`,再通过设置 el-form-item 的 prop 属性 `rules` 来定义校验规则,这样在提交表单时,即使这个表单项是一个普通的文本,也会触发校验,并提示错误信息。
阅读全文