我有一个jQuery日期选择器的问题,它可以在Chrome或IE9中正常工作,但是在IE8中,只要有人点击顶部的月/年更改箭头,或者选择日期,它就会关闭并显示当前所选月份内的随机日期(当前问题是选择第18个,但我看到它也选择其他日期 - 除了实际点击的日期之外)。我们在整个产品中使用jQuery 1.8.0和其他框架(下划线和敲除),但其他框架没有在其他页面上使用
这是一个内部系统,所以它不是在野外,但不幸的是,我们的用户仅限于使用IE8,因为它们在Windows XP上,而我们的网络管理员不允许使用Chrome。因此,虽然我可以调试它并看到它在IE9或Chrome中运行,但这对我们的用户没有帮助。
JS代码:
$(function () {
$('.date-field').each(function () {
var $this = $(this);
if ($this.data('bound'))
return;
$this.datepicker({
format: 'dd-mm-yyyy'
}).data('bound', true);
});
});
Html代码:
<input type="text" class="span3 date-field" name="FromDate">
在许多页面中还有其他Javascript,以及相关页面中的其他功能,但是粘贴太多,在这种情况下,调试时没有错误被抛到任何控制台(IE8 / 9或Chrome) javascript - 它只是在点击任何内容并且没有设置值时关闭datepicker。
我有点困惑 - 我已经google了一下,虽然我可以找到其他问题,关闭日期选择器,他们通常在他们周围没有关闭,其中一些看起来似乎在正确的轨道上没有回答。我也尝试将jQuery版本升级到1.9.0,但它没有任何区别 - 问题和行为仍然存在。
我已经设置了一个jsFiddle - http://jsfiddle.net/mCVaY/7/ - 它封装了这个问题,但是 - 令人恼火的是 - jsFiddle似乎不能在IE8下工作......(或者我做错了 - 它是IE8标准/ IE9中的浏览器模式,我必须测试,因为我在Win 7而不是XP ...)
如果我能提供更多信息,请通知我。
答案 0 :(得分:0)
这取决于datepicker引导程序,它已包含在项目中,我没有注意到,而不是jQuery datepicker。这解释了为什么使用format属性而不是dateFormat来设置显示日期的格式,以及为什么很难找到问题的答案!
他们的论坛上存在与同一问题相关的问题:https://github.com/eternicode/bootstrap-datepicker/issues/144
更新到最新版本修复了此问题。