2011-05-22 124 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