From 0294efd863d944f55d186ebdc9248e70515563a8 Mon Sep 17 00:00:00 2001 From: lrw <18279117177@163.com> Date: Tue, 18 Feb 2020 12:31:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=9A=90=E8=97=8FBUG?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/fillIn/fillIn.vue | 9 ++++++--- pages/fillInDay/fillInDay.vue | 5 ++++- utils/validate.js | 6 +++++- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/pages/fillIn/fillIn.vue b/pages/fillIn/fillIn.vue index f79845f..aa66141 100644 --- a/pages/fillIn/fillIn.vue +++ b/pages/fillIn/fillIn.vue @@ -204,6 +204,7 @@ titleClass: 'title', placeholder: '请输入11位数字手机号', type: 'input', + controType:'number', validator: validate.isPhone }, { @@ -1031,7 +1032,7 @@ titleClass: 'title', placeholder: '请输入身份证号/护照号', type: 'input', - validator: validate.isIdCard + validator: validate.passportNumberAndIdCardReg }, { @@ -1358,6 +1359,7 @@ label: '无上述情况' } ], + noneValue:'g', showList: [{ value: 'c', show: [32, 35, 38, 40, 43, 45, 47] @@ -1721,7 +1723,6 @@ 'residenceDistrict'] this.$set(this.form, 'residenceValue', val) } - // 赋值 for (let k in data) { const val = data[k] @@ -1819,6 +1820,9 @@ let val = evt.value || evt.detail.value; const showList = item.showList if (showList && showList.length > 0) { + if(item.noneValue && val[val.length -1] == item.noneValue) { + val = [item.noneValue] + } showList.forEach(item => { item.show.forEach(child => { this.list.forEach(row => { @@ -1827,7 +1831,6 @@ if (val.includes(v)) { this.$set(row, 'hidden', false) return true - console.log(child) } else { this.$set(row, 'hidden', true) return false diff --git a/pages/fillInDay/fillInDay.vue b/pages/fillInDay/fillInDay.vue index 8094f92..d12e5f0 100644 --- a/pages/fillInDay/fillInDay.vue +++ b/pages/fillInDay/fillInDay.vue @@ -150,6 +150,7 @@ label: '无上述情况' } ], + noneValue:'g', showList: [{ value: 'c', show: [32, 35, 38, 40, 43, 45, 47] @@ -778,6 +779,9 @@ let val = evt.value || evt.detail.value; const showList = item.showList if (showList && showList.length > 0) { + if(item.noneValue && val[val.length -1] == item.noneValue) { + val = [item.noneValue] + } showList.forEach(item => { item.show.forEach(child => { @@ -787,7 +791,6 @@ if(val.includes(v)) { this.$set(row, 'hidden', false) return true - console.log(child) }else { this.$set(row, 'hidden', true) return false diff --git a/utils/validate.js b/utils/validate.js index 4e8c78b..c907585 100644 --- a/utils/validate.js +++ b/utils/validate.js @@ -6,8 +6,12 @@ const emailReg = /^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/ const pwdReg = /^.{6,16}$/ const inviteCodeReg = /^[a-zA-Z0-9]{6,16}$/ const idCardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/ - +// 护照号 +const passportNumberReg = /^1[45][0-9]{7}$|(^[P|p|S|s]\d{7}$)|(^[S|s|G|g|E|e]\d{8}$)|(^[Gg|Tt|Ss|Ll|Qq|Dd|Aa|Ff]\d{8}$)|(^[H|h|M|m]\d{8,10}$)/ export default { + passportNumberAndIdCardReg: function(val) { + return passportNumberReg.test(val) || idCardReg.test(val) + }, isNumber: function(val) { return numberReg.test(val) }, -- 2.22.0