2016-03-11 53 views
1

我有一些javascript可以在表的每一行上创建日期时间选择器。该功能仅适用于第一行。我明白,这是因为datepicker在每一行共享相同的ID。我如何调整我的代码来解决这个问题?Javascript函数在PHP中第一次循环后停止

<script type="text/javascript"> 
$(document).ready(function(){ 
$('#duedate').datetimepicker({ 
controlType: 'select', 
timeFormat: 'hh:mm tt' 
}); 
}); 
</script> 

<?php $txtJob = $_GET['pickjob']; ?> 

<?php 
$query2 = "Select Work_Center, Sequence, Est_Total_Hrs from V_schedule WHERE job = '" . $txtJob . "'"; 
$results2 = sqlsrv_query($connPpp, $query2);?> 

<form id="frmpromiseddate" name="frmpromiseddate" action="schedule_job_submit.php" method="POST"> 
     <table class='table table-bordered table-condensed table-striped'> 
      <tr> 
       <td>Sequence</td> 
       <td>Work Center</td> 
       <td>Due Date</td> 
      </tr> 
<?php while ($row2 = sqlsrv_fetch_array($results2)) {?> 
     <tr> 
      <td><?php echo $row2['Sequence']?></td> 
      <td><?php echo $row2['Work_Center']?></td> 
      <td><input type="text" name="duedate" id="duedate" value="" /> </td> 
     </tr> 
<?php ;} //End of while ?> 
</table> 
+4

更改ID('#' )到类('.')。 –

回答

2

Jquery对待id作为唯一标识符和仅一个元件在一个时间,在那里,因为它把class作为组标识符,并且可以应用到多个元件同时施加在如此改变idclasshtmlJquery代码: -

<td><input type="text" name="duedate" class="duedate" value="" /></td> 

而且

$('.duedate').datetimepicker({ 
+0

谢谢。这是完美的 – user1548989

1

使用类而不是ID(#)的日期选择器

Javascript代码(。):

$('.duedate').datetimepicker() 

HTML代码:制作ID唯一

<?php $i=0; 
while ($row2 = sqlsrv_fetch_array($results2)) {?> 
    <tr> 
     <td><?php echo $row2['Sequence']?></td> 
     <td><?php echo $row2['Work_Center']?></td> 
     <td><input type="text" name="duedate" class="duedate" id="duedate_<?php echo $i;?>" value="" /> </td> 
    </tr> 
<?php $i++; } //End of while ?> 
+0

它不是,保持身份证可以是有用的 - 例如,如果OP决定他想给他的标记添加标签 – sm1215

+0

@安南只是为了有一个清晰的了解。 –

相关问题