微信小程序form表单多input键盘弹框问题

问题描述:

form表单中有多个input时,输入完一个再去输入另一个时,会出现键盘弹框先闪退一下在调起的情况

解决方法

用代码去控制键盘的关闭

实现步骤:

<view class="content">
    <view class="title">员工登录</view>
    <view class="inner inner1">
        <image class="icon" mode="scaleToFill" src="https://laikangland-dev.oss-cn-beijing.aliyuncs.com/20221020132747f5tq.png?Expires=2296963667&OSSAccessKeyId=LTAIykCrXSP1fmei&Signature=fAdmMqCCSm6nlDYOXEfL6xp%2BhEo%3D"></image>
        <input bindtap="inputTap" placeholder="账号" type="text" id="name" focus="{{focusId=='name'?true:false}}"  bindinput="account" placeholder-class="placeholder"/>
    </view>
    <view class="inner inner2">
        <image class="icon" mode="scaleToFill" src="https://laikangland-dev.oss-cn-beijing.aliyuncs.com/20221020132818e983.png?Expires=2296963699&OSSAccessKeyId=LTAIykCrXSP1fmei&Signature=nx8yr0MQGMEHVJF%2FgcAgxBfaG9o%3D"></image>
        <input bindtap="inputTap" placeholder="密码" id="password" focus="{{focusId=='password'?true:false}}" type='password'  bindinput="password" placeholder-class="placeholder"/>
    </view>
    <button class="mybtn" catchtap="login">登录</button>
</view>

 

data: {
    focusId: null
},
inputTap(e) {
   console.log("e",e)
   var that = this
   wx.hideKeyboard()
   setTimeout(function () {
      that.setData({
          focusId: e.currentTarget.id
      })
  }, 200)
},

试过vant的组件,里边的<van-field />也存在同样问题,可以试着改下组件里边的input,我感觉使用<van-field/>这个的优点就是表单校验展示页面更加方便友好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值