1

我有一个 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,以及相关页面中的其他功能,但粘贴的内容太多,在这种情况下,调试 javascript 时不会向任何控制台(IE8/9 或 Chrome)抛出错误 -它只是在单击任何内容而不设置值时关闭日期选择器。

我有点困惑 - 我已经四处搜索,虽然我可以找到关闭日期选择器的其他问题,但它们通常在它们周围没有关闭,并且其中一些似乎在正确的轨道上没有得到回答。我也尝试将 jQuery 版本升级到 1.9.0,但没有任何区别 - 问题和行为仍然存在。

我已经设置了一个 jsFiddle - http://jsfiddle.net/mCVaY/7/ - 它封装了问题,但是 - 令人恼火的是 - jsFiddle 似乎在 IE8 下不起作用......(或者我做错了 -它是 IE9 中的 IE8 标准/浏览器模式,我必须使用它进行测试,因为我使用的是 Win 7 而不是 XP ...)

收到任何帮助,如果我可以提供更多信息,请告诉我。

4

1 回答 1

0

这取决于 datepicker 引导程序,它已包含在项目中,我没有注意到,而不是 jQuery datepicker。这就解释了为什么使用 format 属性而不是 dateFormat 来设置显示日期的格式,以及为什么很难找到问题的答案!

他们的论坛上有一个与同一问题有关的问题:https ://github.com/eternicode/bootstrap-datepicker/issues/144

更新到他们的最新版本解决了这个问题。

于 2013-02-19T14:33:38.940 回答