jQuery UI Datepicker和谷歌浏览器无法正常工作

时间:2010-02-16 09:41:06

标签: google-chrome uidatepicker

我在使用jQueryUI Datepicker和Google Chrome时遇到了一些问题。我的日期选择器正在按预期运行IE8,Firefox和Safari。问题是单击Chrome中的datepicker连接文本框。它给了我一个崩溃页面,“糟糕,发生错误......”。在我的页面上有带有日期选择器的文本框。 datepicker依赖于语言,它动态加载正确的语言设置。 datepicker还应显示月份和年份下拉列表。代码如下

$(function() {
    $.datepicker.setDefaults($.extend({ changeMonth: true, changeYear: true }, $.datepicker.regional['']));

    $('#<%= TextBoxBirthDate.ClientID %>').datepicker($.datepicker.regional[$('#LabelRegionalSettings').val()]);});

如果我只使用一个选项扩展日期选择器,即changeYear,它可以在Chrome中使用。但是如果我添加另一个选项,即changeMonth,则会发生Chrome中的“崩溃”。

我的代码不正确吗?如果是这样,我该如何解决?

非常感谢任何帮助!


我已更新代码以使其更具可读性。但是,如果添加changeMonth选项,Chrome仍然会崩溃。

$(function() {
    $.datepicker.setDefaults($.datepicker.regional['']);
        $('#<%= TextBoxBirthDate.ClientID %>').datepicker($.datepicker.regional[$('#LabelRegionalSettings').val()]);<br />
        $('#<%= TextBoxBirthDate.ClientID %>').datepicker('option', 'changeMonth', true);
        $('#<%= TextBoxBirthDate.ClientID %>').datepicker('option', 'changeYear', true);
        $('#<%= TextBoxBirthDate.ClientID %>').datepicker('option', 'yearRange', '-50:+0');
    });

有人对可能导致Chrome崩溃的原因有任何疑问吗?

2 个答案:

答案 0 :(得分:2)

实际上...继续我的解决方案: 有些问题与年份选择元素的宽度有关 css中的确切行是下一行: .ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {width:49%;}

如果您将其更改为某个非百分比值,则会修复它...类似这样的事情: .ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {width:75px;}

希望它有所帮助, 马塞洛

答案 1 :(得分:0)

固定!

我有同样的问题..我实际上发现它是我正在使用的CSS文件的问题..即:

jquery.ui.core.css
jquery.ui.theme.css
jquery.ui.datepicker.css

我不知道为什么这是..在chrome中的调试并不像firefox那样令人愉快..但我的简单修复是重新下载我想要的主题并修复了问题。

希望有所帮助

Ĵ


我遇到同样的问题..有人有修复吗?有人在这里发布了一项潜在的工作: http://groups.google.com/group/jquery-ui/browse_thread/thread/1ea5315618087a9d?pli=1

(通过将setTimeout包装在用户识别为问题的位置附近,但这对我来说也不起作用。)