不知不觉
不知不觉
  • 发布:2016-07-21 17:15
  • 更新:2016-09-06 15:30
  • 阅读:2603

picker城市选择器与键盘冲突

分类:MUI
2016-07-21 17:15 负责人:无 分享
已邀请:
Trust

Trust - 少说废话

请附上可以还原场景的代码。

yeyeyeye

yeyeyeye

cityPicker = new mui.PopPicker({  
		layer: 2,buttons:['取消','完成']  
	});  
	cityPicker.setData(p_result);  
	var showCityPickerButton = document.getElementById('city');  
	showCityPickerButton.addEventListener('click', function(event) {  
		cityPicker.show(function(items) {  
			var cur_city_value = showCityPickerButton.value;  
			var choose_city_value = items[1].text;  
			if(cur_city_value !== choose_city_value){  
				$("#city").val(items[1].text);  
				cur_city = items[1].value;  
				getFormDataByCity(cur_city);  
			}  
		});  
	}, false);  
  
  
$("#submit").click(function(){  
		formLogin();  
	});  
  
  
<form class="form mt10 mui-input-group" id="addForm">  
				<div class="form-item clearfix">  
					<i class="mui-navigate-right"></i>  
					<div class="tab-cell item-name">城市</div>  
					<div class="tab-cell item-value"><input type="text" name="" readonly="readonly"  id="city" class="text" placeholder="选择社保所在的城市" /></div>  
				</div>  
				<div class="form-item clearfix mt10 bt mui-input-row">  
					<div class="tab-cell item-name">用户号</div>  
					<div class="tab-cell item-value"><input type="text" name="account" id="account" class="text" placeholder="邮箱/手机号/身份证号" maxlength="50"/></div>  
				</div>  
				<div class="form-item clearfix mui-input-row">  
					<div class="tab-cell item-name">登录密码</div>  
					<div class="tab-cell item-value"><input type="password" name="password" id="pwd" class="text" placeholder="请输入登录密码" maxlength="50"/></div>  
				</div>  
				<div class="form-item clearfix mui-input-row">  
					<div class="tab-cell item-name">验证码</div>  
					<div class="tab-cell item-value">  
						<img src="img/code.png" class="code-img"/>  
						<span class="small-input-txt"><input type="text" name="text" id="code" class="text-small" /></span>  
					</div>  
				</div>  
			</form>  
			<div class="operate">  
				<a class="btn-submit" href="javascript:void(0);" id="submit">提交</a>				  
			</div>  
  

如上:我是在input输入的时候,ios上弹出了键盘,我不关闭键盘,直接点击提交按钮,picker就会闪现,

  • Trust

    请直接提供完整的附件,方便调试。


    2016-07-22 10:23

  • yeyeyeye

    对了,我手机是ios6 系统9.2 ,安卓上没问题的


    2016-07-22 17:55

  • yeyeyeye

    已经放了完整的项目,麻烦帮我看下,谢谢


    2016-07-22 17:55

yeyeyeye

yeyeyeye

附件中的index.html,点击用户号,进行输入,输入完成后,不要关闭键盘,直接点击提交按钮,键盘先先去了,然后弹出了picker,picker很快自己又不见了

yeyeyeye

yeyeyeye

时隔这么长时间,终于找到了解决的办法了

解决办法:
按钮的点击事件不要使用click,使用tap事件,并且在tap事件里面让input text失去焦点,果然使用mui还是摒弃click的好

该问题目前已经被锁定, 无法添加新回复