javascript - 避免在选择日期后重新打开日期选择器

标签 javascript jquery jquery-ui internet-explorer datepicker

仅在 IE 中使用此代码

$('#datepicker').datepicker({
    onSelect : function(x, u){
     $(this).focus();   
    }
});

当我选择一个日期时,日期选择器会重新打开,因为我在 onSelect 中添加了 $(this).focus();。我该如何解决这个问题? ( Example )

我正在使用 jquery 1.8.2 和 jquery-ui 1.9

最佳答案

我今天遇到了这个问题,并为我找到了不同的解决方案。我的场景是我的 DatePicker 在 jQuery UI 对话框弹出窗口中。在 Chrome 中一切正常,但在 IE 中,日历总是会在选择日期后重新出现。

事实证明,在 jQuery 1.10.1 中有一个 Unresolved 错误:http://bugs.jqueryui.com/ticket/9125

还有一个JSFiddle链接到演示 IE 中的错误。有两种方法可以让它在 IE 中工作:

  1. modal设置为false
  2. 选择日期后立即关注另一个元素

我选择了#2,这里是一个修复示例(仅更新 JSFiddle 代码):

标记:

<div id="dialog">
    <input id="datepicker" />
    <input type='button' value='save' id='btnSave'/>    
</div>

JS:

$( "#datepicker" ).datepicker({onSelect: function() { $('#btnSave').focus(); }});
$( "#dialog" ).dialog({ modal: true });

希望这对以后的人有帮助!

关于javascript - 避免在选择日期后重新打开日期选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13010463/

相关文章:

jquery - 如何防止添加 CSS 'class' 属性

jquery ui ressized() 不工作

javascript - jQuery 数据 $(...).data ('foo' ) 有时会在 Backbone 应用程序中返回 undefined

javascript - 谷歌地图API加载灰色 map 而不是 map 图像

javascript - 如何使用 JQuery 选择在页面加载时显示哪个 CSS 类?

jquery - 使用 jQuery 刷新(重新加载)页面一次?

javascript - 如果选中,更改复选框的标签 css 类

jquery - jquery UI 对话框中的滚动条使 IE8 崩溃

javascript - Angular JS 代码不工作

jquery - 单击 jQuery SmartMenus 中的顶级链接时如何打开子菜单