開始日と選択した日数から終了日を計算したいフォームがあります。
したがって、プロセス...... 日を選択 開始日を選択 終了日を自動入力 = 開始日 + 日
私は次の作業を行っていますが、計算を行う方法を知っている人はいますか?
var $title3 = $("#enddate");
$("#startdate").keyup(function () {
$title3.val(this.value);
});
$("#startdate").blur(function () {
$title3.val(this.value);
});
$("#days").keyup(function () {
$title3.val(this.value);
});
$("#days").blur(function () {
$title3.val(this.value);
});
echo'<table width="100%"><tr>
<td class="label"><label for="days">Days:</label></td>
<td class="field">
<select id="days" name="days">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
</td>
<td class="status"></td>
</tr>
<tr>
<td class="label"><label for="startdate">Start Date:</label></td>
<td class="field"><input type="text" name="startdate" id="startdate" class="required" readonly="readonly"/></td>
<td class="status"></td>
</tr>
<tr>
<td class="label"><label for="enddate2">End Date:</label></td>
<td class="field"><input type="text" name="enddate2" id="enddate2" class="required" readonly="readonly"/></td>
<td class="status"></td>
</tr></table>';
モッド
これは私が思いついた解決策ですが、終了日の maxDate を selectedDate + 週末を除く 5 日にする必要があります。これをどのように書きますか?
また、enddate と startdate の 2 つの結果から日数の差を計算する方法はありますが、週末は除外できますか?
var $ac_start_date = '<?php echo $ac_end_date ?>',
$ac_start_date_flip = '<?php echo $ac_end_date_flip ?>',
$ac_start_parsed = Date.parse($ac_start_date),
_today = new Date().getTime();
// For Opera and older winXP IE n such
if (isNaN($ac_start_parsed)) {
$ac_start_parsed = Date.parse($ac_start_date_flip);
}
var _aDayinMS = 1000 * 60 * 60 * 24;
// Calculate the difference in milliseconds
var difference_ms = Math.abs($ac_start_parsed - _today);
// Convert back to days and return
var DAY_DIFFERENCE = Math.round(difference_ms/_aDayinMS);
// do initialization here
$("#startdate").datepicker({
dateFormat: 'dd-mm-yy',
changeMonth: true,
changeYear: true,
yearRange: '0:+100',
onSelect: function( selectedDate ) {
$( "#enddate" ).datepicker( "option", "minDate", selectedDate );
$( "#enddate" ).datepicker( "option", "maxDate", selectedDate + 5days excluding weekends);
},
minDate: '+1d',
maxDate: '+' + (DAY_DIFFERENCE + 1) + 'd'
});
// do initialization here
$("#enddate").datepicker({
dateFormat: 'dd-mm-yy',
changeMonth: true,
changeYear: true,
yearRange: '0:+100'
});
ああ...
$(".selector").datepicker({ beforeShowDay: $.datepicker.noWeekends })