2016-10-04 70 views
0

我有,用戶在開始時間結束時間,格式爲HH的事件(例如鍵入一個形式:毫米,如16: 45)。傳遞形式輸入到jQuery的作爲變量(以提示值)

<form action="time.php" method="POST"> 
    <input type="text" name="start" /></td> 
    <input type="text" name="end" /></td> 
    <input type="submit" name="submit" value="submit" /> 
</form> 

我想自動提示結束時間的值,這取決於輸入的值作爲開始時間。 比方說,我想提示一個比開始時間晚100分鐘的值(變量$endTime)。

我使用jQuery嘗試:

<script> 
$(document).ready(function(){ 
    $('input[name="start"]').change(function() { 
     $('input[name="end"]').val("<?php echo $endTime ;?>"); 
    }); 
}); 
</script> 

的問題與上面的腳本是input[name="start"]應當存儲爲一個變量,以便相應計算$終止時間。 也許你有一個建議。

回答

1

您可以使用jquery本身設置結束輸入而不使用變量。

<script> 
$(document).ready(function(){ 
    $('input[name="start"]').change(function() { 
     $('input[name="end"]').val(computeEndTime($('input[name="start"]').val())); 
    }); 
function computeEndTime(start){ 
    var hourstart = start.substr(0, start.indexOf(':')); 
    var minutestart = start.substr(start.indexOf(":") + 1); 
    var total = hourstart * 60 + minutestart + 100; 

    var minutes = total%60; 
    var hours = (total - minutes)/60; 
    return hours + ":" + minutes; 
} 
}); 
</script> 
+0

如何在jQuery中實現該計算? – Alex

+0

增加了計算邏輯! –

+0

謝謝。我認爲它需要一些調整。如果您輸入開始時間「09:00」,腳本會提示'900001:40'作爲結束時間。 – Alex