私は、fromdateとtodateである複数の入力フィールドがあるページを持っています。ダイナミックIDと名前を作成しました。 jquery date pickerを使用しました。複数入力フィールドのJquery日付ピッカー
コード:日付ピッカーの場合
<?php
$i=1;
foreach($locations as $location)
{
?>
<tr>
<td><?php echo $location['name'];?></td>
<td>
<input type="text" name="txtFromDate_<?php echo $location['pk_locationid'];?>" class="field" style="width:80px;" id="txtFromDate_<?php echo $i;?>"/>
</td>
<td>
<input type="text" name="txtToDate_<?php echo $location['pk_locationid'];?>" class="field" style="width:80px;" id="txtToDate_<?php echo $i;?>"/>
</td>
<td>
<input type="text" name="txtFromTime_<?php echo $location['pk_locationid'];?>" class="time-pick field" style="width:80px;" />
</td>
<td>
<input type="text" name="txtToTime_<?php echo $location['pk_locationid'];?>" class="time-pick field" style="width:80px;"/>
</td>
</tr>
<?php
$i++;
}
?>
のjQueryコード:
(document).ready(function(){
var count=0;
count=<?php echo count($locations);?>;
for(i=1;i<=count;i++)
{
var dates = $('#txtFromDate_'+i+', #txtToDate_'+i).datepicker({
defaultDate: new Date(),
changeMonth: true,
changeYear: true,
dateFormat: 'yy-mm-dd',
onSelect: function(selectedDate) {
var option = this.id == "txtFromDate_"+i ? "maxDate" : "minDate";
var instance = $(this).data("datepicker");
var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
dates.not(this).datepicker("option", option, date);
}
});
}
jQueryの日付ピッカーは、FROMDATE用と日付フィールドに表示されます。上記のコードでは、日付から日付へのバリデーションを適用しました。つまり、日付は日付からのものでなければなりません。
上記のコードの問題は、この検証が最後の行にのみ適用されることです。
この検証をすべての行に適用する必要があります。
返信いただきありがとうございます。あなたの答えを詳しく教えていただけますか? –
私は提案されたコードを適用しましたが、現在までに動作していないものは日付よりも前に選択することができます。 –
ミックスアップして申し訳ありません。もう1つのバグがありました。コードを更新しました。 – WTK