私は大丈夫と思われる以下のコードを持っています。これは、日付ピッカーを使用し、二つの日付が追加されたときtotaldaysフィールドには、2つの日付の間の日数の量によって移入されます。Javascriptのdatepicker入力フィールドが発砲しない
<script type="text/javascript">
$("#dateone").datepicker({
defaultDate: "+1w",
minDate: 0,
firstDay: 0,
dateFormat: 'dd-mm-yy',
changeMonth: true,
numberOfMonths: 1,
onSelect: function(selectedDate) {
var minDate = $(this).datepicker('getDate');
var newMin = new Date(minDate.setDate(minDate.getDate() + 1));
$("#datetwo").datepicker("option", "minDate", newMin);
var d1 = $('#dateone').datepicker('getDate');
var d2 = $('#datetwo').datepicker('getDate');
var diff = 0;
if (d1 && d2) {
diff = Math.floor((d2.getTime() - d1.getTime())/86400000); // ms per day
}
$('#totaldays').val(diff);
}
});
$("#datetwo").datepicker({
defaultDate: "+1w",
minDate: '+2d',
changeMonth: true,
firstDay: 0,
dateFormat: 'dd-mm-yy',
numberOfMonths: 1,
onSelect: function(selectedDate) {
var maxDate = $(this).datepicker('getDate');
var newMax = new Date(maxDate.setDate(maxDate.getDate() - 1));
$("#dateone").datepicker("option", "maxDate", newMax);
var d1 = $('#dateone').datepicker('getDate');
var d2 = $('#datetwo').datepicker('getDate');
var diff = 0;
if (d1 && d2) {
diff = Math.floor((d2.getTime() - d1.getTime())/86400000); // ms per day
}
$('#totaldays').val(diff);
}
});
$("#dateone").datepicker('setDate', '+1');
$("#datetwo").datepicker('setDate', '+2');
</script>
totaldaysが更新される一方で、変更イベントが発火していないようです。誰も助けることができますか?
おかげ
?あなたは 'totaldays'が更新されていると言っています、そしてそれはchangeイベントの中にあるので、確かにそれは発射です - いいえ?カラードロップダウン - - 小包が をドロップダウン - 価格フィールドを 合計価格=色*荷物* totaldays 私は価格が更新されないの日付を変更すると、しかし、それは更新 : – Santi
申し訳ありませんが、私は他のフィールドを持っています私はtotaldaysフィールドを手動で変更します。 datepickerが正しく起動していないためだと思いましたか? – pele09