|
@@ -37,7 +37,7 @@
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="术语拼音" prop="pycode">
|
|
|
- <el-input v-model.trim="form.pycode" placeholder="请输入术语拼音"></el-input>
|
|
|
+ <el-input v-model.trim="form.pycode" placeholder="请输入术语拼音" ref="pycode"></el-input>
|
|
|
</el-form-item>
|
|
|
<!-- 诊断 -->
|
|
|
<DiseaseForm v-if="form.labelType==='医保疾病名称'" :data="form" @handleInput="handleInput"></DiseaseForm>
|
|
@@ -141,6 +141,16 @@ export default {
|
|
|
CommonForm
|
|
|
},
|
|
|
data() {
|
|
|
+ let reg = /^[a-zA-Z0-9:.,?!@]{0,100}[#$^]?$/;
|
|
|
+ let checkFrequency = (rule, value, callback) => {
|
|
|
+ let pycode = this.$refs.pycode.value;
|
|
|
+ console.log(pycode);
|
|
|
+ if (!reg.test(pycode.trim())) {
|
|
|
+ callback('术语拼音仅支持字母、数字和标点符号');
|
|
|
+ } else {
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ };
|
|
|
return {
|
|
|
form: {
|
|
|
age: '', //年龄
|
|
@@ -189,7 +199,12 @@ export default {
|
|
|
{ max: 100, message: '最多输入100字', trigger: 'blur' }
|
|
|
],
|
|
|
pycode: [
|
|
|
- { required: true, message: '请输入术语拼音', trigger: 'change' }
|
|
|
+ { required: true, message: '请输入术语拼音', trigger: 'change' },
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ validator: checkFrequency,
|
|
|
+ trigger: ['blur', 'change']
|
|
|
+ }
|
|
|
]
|
|
|
},
|
|
|
isEdit: false,
|
|
@@ -197,7 +212,7 @@ export default {
|
|
|
nameFlag: '', // 判断术语名称是否被修改
|
|
|
isValidate: true,
|
|
|
id: '',
|
|
|
- isTrans: true // 拼音是否转换成功
|
|
|
+ isTrans: true // 拼音是否转换成功
|
|
|
};
|
|
|
},
|
|
|
watch: {},
|
|
@@ -447,8 +462,8 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
|
|
|
- handleInput(val){
|
|
|
- this.isTrans = false
|
|
|
+ handleInput(val) {
|
|
|
+ this.isTrans = false;
|
|
|
},
|
|
|
|
|
|
// 处理拼音转换&验证唯一性
|
|
@@ -483,14 +498,13 @@ export default {
|
|
|
this.rules.name = this.rules.name.slice(0, 1); // 删除校验
|
|
|
} else {
|
|
|
this.isValidate = true; // 校验通过
|
|
|
- this.isTrans = true
|
|
|
+ this.isTrans = true;
|
|
|
// 不存在
|
|
|
this.form.pycode = pinyin.getCamelChars(e.target.value);
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
};
|