2013-06-12 66 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中被刪除了。 –