描述问题场景:

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

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

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/jquery-1.7.2.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>

出现问题源代码

  复制上述代码运行发现:选择第一个日期输入框值后,第二个输入框获取了焦点,但是它并没有执行第二个输入框的焦点事件,使得日期控件展示出来;但是在官网的描述和介绍中发现写法并没有问题
 
解决过程:
  此问题是在项目开发中遇到的,便在自己本地开始测试,防止是项目中的别的问题影响,在本地测试发现不管是直接写在页面的文档流中还是后追加进去的都没有问题,唯一的不同之处是我本地测试用的是jquery-1.12.3.min.js版本,测试发现更改了jquery版本解决了此问题
 <!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

注:导致此问题出现的真正原因尚未找到
 

my97DatePicker日期控件——日期输入框联动,使用focus使第二个输入框没展示出日期控件的更多相关文章

  1. Anroid关于fragment控件设置长按事件无法弹出Popupwindows控件问题解决记录

    一.问题描述     记录一下最近在安卓的gragment控件中设置长按事件遇见的一个坑!!!     在正常的activity中整个活动中设置长按事件我通常实例化根部局,例如LinearLayout ...

  2. 点击Input框弹出日期选项

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 第二十一篇:SOUI中的控件注册机制

    Win32编程中,用户需要一个新控件时,需要向系统注册一个新的控件类型.注册以后,调用::CreateWindow时才能根据标识控件类型的字符串创建出一个新的控件窗口对象. 为了能够从XML描述的字符 ...

  4. Delphi 7 里没有加载的控件

    在原来版本如D5.D6中使用的控件如Quickrep,FastNet等,在D7中仍然是保留的.只是Delphi没有将他们默认的安装到组件面版中来.这些控件包全部保存在Delphi目录的bin下,文件扩 ...

  5. 原生js日期时间插件鼠标点击文本框弹出日期时间表格选择日期时间

    原文出处 (这是我从互联网上搜来的,感觉能满足各方面的需求.个人感觉挺不错的,所以后期修改了一下向大家推荐!) 效果图: html代码: <!DOCTYPE html PUBLIC " ...

  6. 用C++编一程序,先输出一行sun mon tue wed thu fri fri,接着使用右对齐打印出日期,像日历那样

    用C++编一程序,先输出一行sun mon tue wed thu fri fri,接着使用右对齐打印出日期,像日历那样 先输出一行sun mon tue wed thu fri fri,再提醒用户输 ...

  7. 关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false

    关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false 我们在 Unity 中通过 UI 菜单创建的各种控件,比如 Text, Image 等, ...

  8. 怎样在不对控件类型进行硬编码的情况下在 C#vs 中动态添加控件

    文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET ...

  9. vue+element项目中使用el-dialog弹出Tree控件报错问题

    1. 按正常的点击按钮,显示dialog弹出的Tree控件,然后把该条数据下的已经选中的checkbox , 用setCheckedNodes或者setCheckedKeys方法选择上 , 报下面这个 ...

随机推荐

  1. Spring MVC返回Map格式JSON数据

    问题描述: ajax中走error : function(e) {} 问题背景: 在测试controller层时,试过了ResponseEntity<ResponseModel>这种类型返 ...

  2. 额。。万恶之源就是c

    http://blog.csdn.net/feeltouch/article/details/45155529

  3. 让“是男人就下到100层”在Android平台上跑起来

    原工程:https://github.com/jeekun/DownFloors 移植后的代码:HelloCpp.zip 移植后的APK:HelloCpp.apk 说明:(cocos2d-x版本是“ ...

  4. Uiautomator--Uiselector元素定位

    一.UiSelector作用 按照一定的条件(例如控件的text值,资源id),定位界面上的元素.UiSelector对象的最终目的是去构造一个UiObject对象. 二.元素定位 1.根据text定 ...

  5. 如何封装JS ----》JS设计模式《------ 封装与信息隐藏

    1. 封装与 信息隐藏之间的关系 实质是同一个概念的两种表达,信息隐藏式目的,二封装是借以达到目的的技术方法.封装是对象内部的数据表现形式和实现细节,要想访问封装过额对象中的数据,只有使用自己定义的操 ...

  6. tp5 中 model 的获取器

    在获取数据的字段值后自动进行处理 // 模型中写入如下代码,则查询结果会自动将status的结果进行转换 class User extends Model { public function getS ...

  7. RakNet基本教程

    官方网址:http://www.jenkinssoftware.com/raknet/manual/tutorialsample3.html Tutorial code sample 3 Remote ...

  8. C#之反射

    Assembly assembly = Assembly.Load("PeopleDal"); //获取程序集名称 Module[] modules = assembly.GetM ...

  9. .net中的反射(转载)

    原文地址:http://www.cnblogs.com/Stephenchao/p/4481995.html 两个现实中的例子:1.B超:大家体检的时候大概都做过B超吧,B超可以透过肚皮探测到你内脏的 ...

  10. C语言的可变参数在Linux(Ubuntu)与Windows下注意点

    基本上C语言的可变参数原理在不同平台和不同编译器下基本类似(通过函数入栈,从右向左,从高位到低位地址),不过部分实现会有所不同:在使用中需要注意的是: va_list 为char 类型指针,部分调用如 ...