我有以下代碼似乎工作正常。它使用的日期選擇器,當添加兩個日期totaldays場是由兩個日期之間的天量填充:Javascript日期選擇器輸入字段沒有觸發
<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'事件的內部,所以肯定會發射 - 不是? – Santi
對不起,我有其他的領域: - 顏色下拉 - 包裹下拉列表 - 一個價格區域 總價= *色*包裹totaldays 當我改價格不更新日期,但它更新當我手動更改totaldays字段。 我猜測這是因爲datepicker沒有正確觸發? – pele09