2011-05-22 58 views
1

我正在開發與PHP,並試圖將jquery的datepicker工作到我的應用程序。我試圖顯示一個綁定到特定輸入字段的日期選擇器。我有以下代碼。問題是,我第一次點擊輸入,沒有任何反應。只有當我沒有專注,然後重新點擊它時,它纔會顯示選取器。如何讓它在第一次點擊時顯示日期選擇器?jquery datepicker onclick help

<script> 
function open_picker(X) 
    { 
     $(X).datepicker({ 
      autoSize: true, 
      showOtherMonths: true, 
      selectOtherMonths: true });  
    }; 
</script> 
<?php $datepickerid = "datepicker" ?> 
<input id='<?php echo $datepickerid; ?>' onClick='open_picker("<?php echo "#".$datepickerid; ?>");' type='text' value='05/21/2011' size='10'> 

我需要通過函數來​​傳遞所輸入的ID的,因爲我將使用一個PHP循環以產生具有不同的ID的日期選擇器輸入。

在此先感謝!

回答

2

假設您正在使用JQuery UI Datepicker您的函數open_picker()未打開日期選擇器。該代碼的作用是將日期選擇器綁定到作爲參數X傳遞的輸入。這就是爲什麼在第一次單擊時沒有任何反應:因爲日期選擇器是在第一次點擊時創建了。 你需要做的,以創建由PHP多個datepickers什麼是一樣的東西:

<script type="text/javascript"> 
    <?php 
    $datepickers_ids = array("#all", "#the", "#datepickers", ".selectors"); 
    for($i = 0; $i < count($datepickers_ids); $i++) { ?> 
     $("<?php print $datepickers_id[$i]; ?>").datepicker(); 
    <?php } ?> 
</script> 

這將產生在$ datepickers_ids各選擇一個datepicker