<div class="documentsInput" style="margin-top: 20px;">
<el-form @keyup.native.enter.ctrl="saveDocAttachForm('docAttachForm')" class="customForm" :inline="true" :rules="docAttachFormAdd" ref="docAttachForm" :model="docAttachForm" label-width="100px">
<!--<el-form-item label-width="0px" label="" prop="DocuCode">
<el-input v-model="docAttachForm.DocuCode" type="hidden" auto-complete="off"></el-input>
</el-form-item>-->
<el-form-item label="随附单证代码" prop="DocuCodeName">
<el-input class="requiredOpt" id="DocuCodeNameInput" v-model="docAttachForm.DocuCodeName" auto-complete="off" :style="{width:'182px'}"></el-input>
</el-form-item>
<el-form-item label="随附单证编号" prop="CertCode">
<el-input class="requiredOpt" v-model="docAttachForm.CertCode" auto-complete="off" :style="{width:'182px'}"></el-input>
</el-form-item>
</el-form>
</div>
校验规则:
docAttachFormAdd:{
DocuCodeName: [
{validator: chkDocuCodeName,trigger:'change,blur'}
],
CertCode: [
{validator: chkCertCode,trigger:'change,blur'}
]
},
保存方法:
saveDocAttachForm (docAttachForm) {
this.$refs[docAttachForm].validate((valid) => {
if (valid) {
var docAttachNewForm = {}
for(var it in this.docAttachForm) {
docAttachNewForm[it] = this.docAttachForm[it]
}
this.orderData.push(docAttachNewForm)
this.totalSaveJson.orderData = this.orderData
for(var it in this.docAttachForm) {
this.docAttachForm[it] = ''
}
$("#DocuCodeNameInput").focus();
}
})
},
我给docAttachForm 添加了校验规则,当保存的时候如果有不符合规则的都会提示错误,为什么当我保存成功后,我把输入框里的数据清空后,让表单的第一个输入框获取焦点,表单里面的必填项还是会报错,边框变红,可是我并没有校验啊。请教下各位这是什么原因啊
因为你的 trigger 写了 change,blur
内容修改或者失去焦点都会进行校验。