2010-10-27 49 views
7

我正在開發一個asp.net頁面/應用程序。我創建了一個文本框,我使用jqueryui中的datepicker設置爲日期選擇器。在Firefox和鉻日期選擇器不呈現。在IE9日期選擇器呈現如果我忽略錯誤。該錯誤是在jquery.ui.datepicker.js中的第644行。jqueryui datepicker拋出錯誤在與zIndex相關的代碼

錯誤引發的代碼在這裏。

inst.dpDiv.zIndex($(input).zIndex()+1);

這是當它捕獲錯誤VS顯示消息

微軟JScript運行時錯誤:對象不支持此屬性或方法

我不知道是什麼導致了這個問題。我查找了zindex問題,而且我發現的問題與出現在其他元素背後的對話框有關。我沒有發生。

+0

如果您希望其他人可以提供幫助,請附上一些代碼。例如你的頭部分,文本框標記,jquery初始化代碼等。 – Lorenzo 2010-10-27 22:56:46

+0

我已經刪除了這段代碼,但僅僅是爲了跟進。但我的代碼幾乎是複製/粘貼的例子如何添加怪異的日期選擇器。 http://jqueryui.com/demos/datepicker/作爲我使用的資源的一個例子。唯一的區別是我使用asp文本框而不是我的aspx文件中的html文本框。文本框屬性包括id,runat和寬度。 – Michael 2010-10-29 04:37:35

回答

3

.zIndex()不是一個jQuery方法(搜索jQuery的API,什麼也沒有)

您應該使用的CSS( 'z-index的', '100')

另外一個側面注意:

在ASP .NET工作每當我不使用$符號來訪問的jQuery我用

inst.dpDiv.zIndex(jQuery(input).zIndex()+1); 

根據什麼ASP .NET框架使用的是贏形式,MVC等內置的MSFT一個jax可以與jQuery相沖突。

+0

所以破解的代碼是直接來自jqueryui.com的代碼。我應該更新該js文件嗎? – Michael 2010-10-29 04:31:47

+0

http://jquery-ui.googlecode.com/svn/trunk/ui/jquery.ui.datepicker.js – Michael 2010-10-29 04:40:58

+0

好吧,現在我不知道我必須做錯了什麼。我昨天拿出了代碼,並繼續與我的項目。今天我把代碼放回去了,沒有錯誤o_O。 – Michael 2010-10-29 05:02:31

7

我有這個相同的問題,並通過確保我有最新的jQuery和jQuery UI引用來修復它。

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js"></script> 
26

添加jquery.ui.core.js都會好的

+0

這工作對我來說 – kraag22 2013-10-07 11:45:15

+0

謝謝..這是我的作品.. – Prabhagaran 2016-06-13 07:22:42

0

Axel22給出了正確的答案來解決這個問題對我來說。

這是因爲jquery-ui-datepicker.js腳本依賴於jquery-ui-core.js腳本。

這在jQuery Datepicker Documentation頁面上的「概覽」選項卡中顯示,右側有一個依存關係列表。

1

使用此:

$.zIndex = $.fn.zIndex = function (opt) {    
     var def = { inc: 10, group: "*" }; 
     $.extend(def, opt); 
     var zmax = 0; 
     $(def.group).each(function() { 
      var cur = parseInt($(this).css('z-index')); 
      zmax = cur > zmax ? cur : zmax; 
     }); 
     if (!this.jquery) 
      return zmax; 

     return this.each(function() { 
      zmax += def.inc; 
      $(this).css("z-index", zmax); 
     }); 
    } 
-1

這是我的解決方案:

//inst.dpDiv.zIndex(jQuery(input).zIndex()+1); //we don't need it anymore 

$.zIndex = '30000'; // i set the zindex at the higher value 
0

添加腳本引用(../Scripts/jquery.ui.core.js)它會工作 參考jquery.ui.core.js庫

1

我包括(核心文件),

 ui.css and ui.core.js files 

這對我很有用

+0

也爲我工作:) – 2017-09-18 11:46:02