您的位置:首页 > 其它

my97DatePicker日期控件——日期输入框联动,使用focus使第二个输入框没展示出日期控件

2016-08-11 18:22 447 查看
描述问题场景:

  1.jquery使用的版本是jquery-1.7.2.min.js

  2.代码不是写在页面上的,是通过事件后追加的

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="jquery-1.12.3.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/My97DatePicker/WdatePicker.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div class="main">

</div>
<input type="button" id="ceshi" value="点击" onclick="ceshiClick()"/>
</body>
<script type="text/javascript">
var str = "<input id='d4315' class='time_start Wdate clearInput' type='text' onFocus=\"WdatePicker({maxDate:'#F{$dp.$D(\\'d4316\\')||\\'%y-%M-%d\\'}',onpicked:function(){$('#d4316').focus();}})\"><span>-</span><input id='d4316' class='time_end Wdate clearInput' type='text' onFocus=\"WdatePicker({maxDate:'%y-%M-%d',minDate:'#F{$dp.$D(\\'d4315\\')}'})\">";
function ceshiClick(){
$('.main').html(str);
}
</script>
</html>


jquery1.12版本
  为了测试问题的真正存在,将第二个输入框中的onFocus的事件改成普通事件,发现它可以正常运行,而改成my97的方法则不行,那么导致此问题的应该是my97的方法吧

解决方法总结:

  1.如果坚持使用jquery-1.7.2.min.js版本,则在第一个输入框的onpicked事件中,使用原生js实现,即$('#d4316').get(0).focus();

  2.要么使用高版本的jquery

注:导致此问题出现的真正原因尚未找到
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: