小程序
小游戏
企业微信
微信支付
扫描小程序码分享
视图:
wxml:
<view class="container">
<button catchtap="getCode">获取验证码</button>
<input id="phone_number" placeholder="输入您的手机号码" bindinput="inputPhoneNumber" auto-focus/>
</view>
问题:点击获取验证码按钮时,输入焦点一直在input里面,导致 button 的catchtap事件不能触发。求各位大神帮忙解答~~~
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
去掉auto-focus
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
试了不行,问题同样存在。
是不是css问题啊,input太长了?
.container input {
position: absolute;
left: 0rpx;
top: 0rpx;
width: 100%;
height: 100rpx;
background: #fff;
padding-left: 5rpx;
border: 1px solid #999999;
}
.container button {
right: 10rpx;
top: 14rpx;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
background: #4285f4;
color: white;
height: 80rpx;
line-height: 60rpx;
border-radius: 4rpx;
font-size: 30rpx;
z-index: 100;
你这个css不太合理,给input价格padding-right试试,不短于button的长度
改了CSS,现在可以了:
.container {
flex-direction: row;
width: 90%;
padding: 0rpx 6rpx;
margin-bottom: 18rpx;
flex-grow: 2;
height: 90;
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
去掉auto-focus
试了不行,问题同样存在。
是不是css问题啊,input太长了?
.container input {
position: absolute;
left: 0rpx;
top: 0rpx;
width: 100%;
height: 100rpx;
background: #fff;
padding-left: 5rpx;
border: 1px solid #999999;
}
.container button {
position: absolute;
right: 10rpx;
top: 14rpx;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
background: #4285f4;
color: white;
height: 80rpx;
line-height: 60rpx;
border-radius: 4rpx;
font-size: 30rpx;
z-index: 100;
}
你这个css不太合理,给input价格padding-right试试,不短于button的长度
改了CSS,现在可以了:
.container {
display: flex;
flex-direction: row;
align-items: center;
width: 90%;
height: 100rpx;
padding: 0rpx 6rpx;
margin-bottom: 18rpx;
background: #fff;
border: 1px solid #999999;
}
.container input {
flex-grow: 2;
height: 90;
background: #fff;
padding-left: 5rpx;
}
.container button {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
background: #4285f4;
color: white;
height: 80rpx;
line-height: 60rpx;
border-radius: 4rpx;
font-size: 30rpx;
z-index: 100;
}