2011-04-09 21 views
0

這裏的場景:
我想在表單中的輸入字段上應用日期選擇器。
單擊鏈接時,將打開一個包含表單的colorbox。Datepicker不能在colorbox中運行

不知何故日期選擇器不起作用,所以我搜索了互聯網。
我對這篇文章感到困惑datepicker inside a thickbox其中發表了以下聲明: JavaScript/jQuery不在ColorBox中工作。
它困惑我,因爲其他人似乎已經解決了。雖然我的錯誤控制檯說,有一個}失蹤後的第一個})

 <script type="text/javascript"> 
     $(document).ready(function() { 
       $(".customer").colorbox(
       { 
        transition:'fade', 
        width:'750', 
        speed:'500', 
        height:'400', 
        iframe:true 
       }); 
     }); 
     </script> 

的顏色框打開成功;:

我將顯示顏色框調用的代碼發生。

的日期選擇器的代碼:

<script type="text/javascript">$(document).ready(function() { 
    $('.datepick').datepicker({ 
    changeYear:true, 
    yearRange:'c-65:c+0', 
    changeMonth:true 
    }); 
    $('.datepick').datepicker($.datepicker.regional['nl']);});</script> 

此代碼別的地方工作,在我的網站,它不是位於顏色框。

我曾嘗試:

  1. 我試着給datepick 10000或更高,因爲顏色框的z-index爲9999默認的z-index類。
  2. 我嘗試了colorbox上的oncomplete函數(),但應用時無法使colorbox工作。
  3. 我試着將iframe設置爲false與前兩個選項結合使用。

我的問題(S):

  1. 是否有可能有一個日期選擇一個顏色框裏面工作?
  2. 我的關於colorbox的代碼是否正確?
  3. 如何解決?

UPDATE
解決方案:我犯了一個愚蠢的錯誤:P ...
然而,我發現我的第一個問題的答案,這可能是一些價值。

  1. 是的,有可能在沒有使用onComplete:function()的情況下在colorbox中使用日期選擇器。

回答

2

您的加載的iframe是否包含datepicker實例化代碼?

我的假設是這樣的:

  • 你有一個class="customer"
  • 這種定位的有一個href,它指向了要在顏色框來顯示頁面的錨
  • 此頁面加載一個iframe(由於iframe:true
  • ,而這個頁面沒有您的日期選擇器實例代碼

最簡單的做法是將日期選擇器代碼移動到customer頁面的onready函數。

+0

datepicker函數位於加載的頁面中。打開彩盒的錨是:add customer。如果我正確理解你,我已經完成了你的建議。糾正我,如果我沒有。 – Mixxiphoid 2011-04-09 19:29:28

+0

那麼,直接進入customer.php會發生什麼?日期選擇器是否工作?如果不是,你看到了什麼錯誤? – typeof 2011-04-09 19:34:29

+0

非常感謝您的提示! :)我注意到在datepicker將被加載之前頁面中的錯誤。這解決了問題! – Mixxiphoid 2011-04-09 19:44:21

1

ColorBox documentation指出:

這往往是由於嘗試之前它已經被加載到該文件,並可以通過移動的JavaScript爲彩盒的的onComplete回調來解決訪問的元素。

實施例(使用jQuery窗體插件):

$('#login_window').colorbox({ 
    ... 
    onComplete:function(){ 
     $('form#login').ajaxForm(); 
}}); 

可以適應的例子加載日期選擇器。

+0

正如我所說我嘗試了onComplete:function()。和$(document).ready(function())不一樣嗎?在沒有onComplete:function()的情況下,我的日期選擇器在colorbox中工作。感謝無論如何的幫助:)。 – Mixxiphoid 2011-04-09 19:42:54