jquery datepicker在IE7和IE8中不起作用

Ric*_*nop 3 javascript jquery jquery-ui jquery-ui-datepicker

这是我的js:

$(document).ready(function() {
 $("input#dateTill").datepicker();
});
Run Code Online (Sandbox Code Playgroud)

我的HTML:

<input type="text" name="dateTill" id="dateTill" class="input" value="20.1.2011" maxlength="10" size="10" style="margin-left: 0; background: url(images/icons/16_calendar.png) 75px center no-repeat;" />
Run Code Online (Sandbox Code Playgroud)

datepicker适用于所有普通浏览器,如Firefox,Chrome,Opera.它在IE7和IE8中不起作用.

当我在输入字段内单击时,不会出现datepicker窗口.

有任何想法吗?我正在使用jquery 1.4.4.

cro*_*ked 8

首先,为了确保,不要对id和name属性使用相同的字符串.并且为了上帝的缘故,不要使用保留字来定义你的类,比如输入,它和内部类/元素.去像pickerClass这样的东西.另外,我认为你的jQuery选择器语法错误,不需要输入部分,你已经有了该元素的id.这个:

$("#dateTill").datepicker();
Run Code Online (Sandbox Code Playgroud)

要么

$("input.pickerClass").datepicker();
Run Code Online (Sandbox Code Playgroud)

如果由于某种奇怪的原因你想一次选择多个输入.此外,如果您已经有CSS定义的类,那么将内联样式移动到CSS中,如果它将用于更多输入字段.

  • @Dunhamzzz当然,这与我的问题无关.crowicked列出的所有问题都应该对datepicker功能没有影响.它们可能是语义或表达错误/问题,但它们不应对我的问题产生任何影响. (2认同)
  • 你有没有尝试我的建议或只是提前说不应该?是的,他们可能不应该,但我们在这里谈论IE(是的,再次严厉).坚持编码的良好做法,你会避免很多头痛.我通过比较你的代码和jQuery UI对话框页面上的示例代码(在IE8中工作,已经检查过)得出了我的结论,我建议你这样做.调试建议:删除对话框的所有自定义,并一次添加一个以查看它的中断位置.对不起,如果我听起来很自大. (2认同)