From 018d52976d12c2823641fa6bf8b0f4e35b1d4302 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B7=A6=E5=93=A5?= <17630302050@163.com> Date: Sun, 27 Jul 2025 18:21:47 +0800 Subject: [PATCH] sdsd --- pages/my/info-edit/index.js | 30 +++++++++++++++++++++++++----- pages/my/info-edit/index.wxml | 24 ++++++++++++------------ 2 files changed, 37 insertions(+), 17 deletions(-) diff --git a/pages/my/info-edit/index.js b/pages/my/info-edit/index.js index c9cb060..fba1ead 100644 --- a/pages/my/info-edit/index.js +++ b/pages/my/info-edit/index.js @@ -5,6 +5,7 @@ let modeText = '' Page({ data: { + isIOS: false, // 添加 iOS 设备检测 personInfo: { username: '', sex: 1, @@ -127,6 +128,9 @@ Page({ onLoad() { // this.initAreaData(); this.getPersonalInfo() + this.setData({ + isIOS: wx.getSystemInfoSync().platform === 'ios' + }) }, async getPersonalInfo() { const info = await request('patient/basic/0') @@ -496,11 +500,18 @@ Page({ list } = e.currentTarget.dataset; modeText = mode - this.setData({ - selectVisible: true, - selectValue: this.data.personInfo[mode] ? this.data.personInfo[mode] : '', - selectList: list - }) + + // 所有设备都使用相同的处理逻辑,避免层级问题 + // 先让所有输入框失焦 + wx.hideKeyboard(); + + setTimeout(() => { + this.setData({ + selectVisible: true, + selectValue: this.data.personInfo[mode] ? this.data.personInfo[mode] : '', + selectList: list + }) + }, 100) }, onSelectChange(e) { const { @@ -520,4 +531,13 @@ Page({ }) }, + onPickerCancel() { + this.setData({ + selectVisible: false + }) + // 确保键盘状态正确 + setTimeout(() => { + wx.hideKeyboard(); + }, 50) + }, }); \ No newline at end of file diff --git a/pages/my/info-edit/index.wxml b/pages/my/info-edit/index.wxml index 9c83e5c..7ada4db 100644 --- a/pages/my/info-edit/index.wxml +++ b/pages/my/info-edit/index.wxml @@ -8,7 +8,7 @@ - + 姓名字数在2至20之间 @@ -20,61 +20,61 @@ - + 身份证号输入有误 - + 请选择出生日期 - + 请输入年龄 - + 请输入出生体重 - + 请选择胆道闭锁手术时间 - + 请选择胎次 - + 请选择产次 - + 请选择受孕方式 - + 请输入孕周 - + 请选择产检是否有异常 @@ -82,7 +82,7 @@ - + 请选择分娩方式