2013-06-12 43 views
0

为什么以下给我在IE8中的错误?它工作正常,在Chrome:jQuery datepicker在IE8中不工作

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.1/themes/smoothness/jquery-ui.css" /> 
<script src="http://code.jquery.com/jquery-1.10.1.js"></script> 
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script> 

<script type="text/javascript" language="javascript"> 

    $(document).ready(function() { 

     $("#txtDate").datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      yearRange: "+0:+1", 
      showButtonPanel: false, 
      dateFormat: "dd/mm/yy", 
      showOn: "button", 
      buttonImage: "../../images/Calendar.png", 
      buttonImageOnly: true 
     }); 

    }); 

</script> 

所以绝对没有这个问题在Chrome,但IE8给了我以下错误:

Webpage error details 

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; chromeframe/27.0.1453.110; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.0.3705; InfoPath.1; .NET4.0C; .NET4.0E) 
Timestamp: Wed, 12 Jun 2013 15:18:48 UTC 

Message: 'length' is null or not an object 
Line: 139 
Char: 17 
Code: 0 
URI: http://intranet/aspnet_client/system_web/1_1_4322/WebUIValidation.js 

的日期选择仍然有效,虽然,当我点击该图标popsup ,我可以选择日期并在文本框中显示日期。但是当我点击日期时,日期选择器应该消失,但它不会,而是显示上述错误。

任何想法?

+0

你碰巧在使用ASP ..? –

+0

@AndrewPeacock,是的,更新标签! – oshirowanen

+0

这似乎是问题与ASP,而不是JS。或者说,看起来问题出在您的WebUIValidation.js文件中。 –

回答

5

显然是jQuery中的一个错误。我只是添加了一个无事件事件处理程序的jQuery datepicker的“onSelect”事件,它工作正常。下面是修改后的jQuery代码:

$(document).ready(function() { 
    $("#txtDate").datepicker({ 
     changeMonth: true, 
     changeYear: true, 
     yearRange: "+0:+1", 
     showButtonPanel: false, 
     dateFormat: "dd/mm/yy", 
     showOn: "button", 
     buttonImage: "../../images/Calendar.png", 
     buttonImageOnly: true, 
     onSelect: function() { } 
    }); 

}); 

我在IE 10中也遇到了错误。让我知道它是否有效。

+0

工作。谢谢! – oshirowanen

+0

另请注意,对于IE 6/7/8的支持在jQuery 2.x中被删除了。 –