ren
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
ref="formRef"
|
||||
:model="dataForm"
|
||||
:rules="formRules"
|
||||
:validate-on-rule-change="false"
|
||||
label-width="120px"
|
||||
>
|
||||
<el-form-item label="毕业时间" prop="graduateTime">
|
||||
@@ -198,14 +199,14 @@ const needDegreeImg = computed(() => {
|
||||
return true
|
||||
})
|
||||
|
||||
// 动态验证规则
|
||||
// 验证规则
|
||||
const formRules = computed(() => {
|
||||
const rules: any = {
|
||||
graduateTime: [
|
||||
{ required: true, message: '请选择毕业时间', trigger: 'change' }
|
||||
{ required: true, message: '请选择毕业时间', trigger: 'blur' }
|
||||
],
|
||||
type: [
|
||||
{ required: true, message: '请选择教育类型', trigger: 'change' }
|
||||
{ required: true, message: '请选择教育类型', trigger: 'blur' }
|
||||
],
|
||||
graduateSchool: [
|
||||
{ required: true, message: '请输入毕业学校', trigger: 'blur' }
|
||||
@@ -222,14 +223,14 @@ const formRules = computed(() => {
|
||||
// 只有当需要学历证书时才添加验证规则
|
||||
if (needQualificationImg.value) {
|
||||
rules.qualificationImg = [
|
||||
{ required: true, message: '请上传学历证书', trigger: 'change' }
|
||||
{ required: true, message: '请上传学历证书', trigger: 'blur' }
|
||||
]
|
||||
}
|
||||
|
||||
// 只有当需要学位证书时才添加验证规则
|
||||
if (needDegreeImg.value) {
|
||||
rules.degreeImg = [
|
||||
{ required: true, message: '请上传学位证书', trigger: 'change' }
|
||||
{ required: true, message: '请上传学位证书', trigger: 'blur' }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -299,6 +300,11 @@ const handleQualificationChange = () => {
|
||||
dataForm.qualificationImg = ''
|
||||
fileList.value = []
|
||||
formRef.value?.clearValidate('qualificationImg')
|
||||
} else {
|
||||
// 如果需要学历证书,延迟清除验证(等字段显示后)
|
||||
nextTick(() => {
|
||||
formRef.value?.clearValidate('qualificationImg')
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -309,6 +315,11 @@ const handleDegreeChange = () => {
|
||||
dataForm.degreeImg = ''
|
||||
fileListB.value = []
|
||||
formRef.value?.clearValidate('degreeImg')
|
||||
} else {
|
||||
// 如果需要学位证书,延迟清除验证(等字段显示后)
|
||||
nextTick(() => {
|
||||
formRef.value?.clearValidate('degreeImg')
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -395,6 +406,9 @@ const openDialog = async (row?: any) => {
|
||||
await nextTick()
|
||||
showForm.value = true
|
||||
dialogVisible.value = true
|
||||
// 对话框打开后,清除所有验证错误,避免立即显示验证提示
|
||||
await nextTick()
|
||||
formRef.value?.clearValidate()
|
||||
}
|
||||
|
||||
// 提交表单
|
||||
|
||||
Reference in New Issue
Block a user