2012-06-12 307 views
0

我有以下代碼,以確保如果用戶選擇日期同一校驗作爲檢查出會議日期,那麼「TOTAL_DAYS」 = 1 如果日期的差> 0 - 那麼它是應該爲每一個更新一天。即「會議日期= 13.06.12」「會議日期= 13.06.12」 - 總天數= 1 - 這是正確的。然而,如果「會議日期= 13.06.12」和「會議日期= 14.06.12」,那麼「total_days」需要是2,而不是1.我做錯了什麼?我曾嘗試以下內容:日期選擇器計算

<td>Conference Date In</td> 
    <td><input type="text" name="conference_date_in" id="conference_date_in" class="datepicker" /></td> 
    <td>&nbsp;</td> 
    <td>Conference Date Out</td> 
    <td><input type="text" name="conference_date_out" id="conference_date_out" class="datepicker" /></td> 
    </tr> 
<td>Total Days</td> 
    <td><input type="text" name="total_days" id="total_days" /></td> 
    </tr> 

<script type="text/javascript"> 

$(function() { 
    $(".datepicker").datepicker({ minDate: -0, maxDate: "+100M +10D",dateFormat: 'dd-mm-yy'}) 
    ({ 
     changeMonth: true, 
     changeYear: true, 
    }); 
     }); 


var enquiry_date = $.datepicker.formatDate('dd-mm-yy', new Date()); 
document.getElementById('enquiry_date').value = enquiry_date; 

var calcDate = function() { 
    var start = $('#conference_date_in').datepicker('getDate'); 
    var end = $('#conference_date_out').datepicker('getDate'); 
    var days = (end - start)/1000/60/60/24; 

    if(days==0) {days=1 
    } 
    if(days >= 0) { 
    document.getElementById('total_days').value = days; 
    } 
     } 


$('#conference_date_out').change(calcDate); 
$('#conference_date_in').change(calcDate); 
+0

難道你不能只給'(end - start)/ 1000/60/60/24的結果加1嗎?你必須如果不是如果..所以這應該可以解決你的問題。 – Zefiryn

+0

非常感謝。那就做了訣竅:-)非常感謝你 – user1426583

+0

Zefiryn:你應該發表你的評論作爲答案,以便這個問題可以關閉。 – machineghost

回答

1

發佈此驢答案以解決問題。

你就不能加1的(end - start)/1000/60/60/24;結果呢? 你必須如果不是如果..所以這應該可以解決你的問題。