現在,當每行中選擇一個開始日期並單擊確定時,結束日期將相應顯示。所以每個表格行必須手動點擊一個按鈕來顯示結束日期。如何用一個開始日期更改多個錶行的日期
我想知道是否有可能,如果我只能選擇一個開始日期,然後點擊確定, 不僅第一行結束日期顯示,而且第二,第三...等行start date
和end date
會自動顯示因此到間隔天數
PS:請注意,來自數據庫的行數是動態的,並且總行數未知。
任何想法將不勝感激。謝謝 !!
(function($, window, document, undefined){
$(".addSkip").click(function() {
// row instance to use `find()` for the other input classes
var $row = $(this).closest('tr');
var date = new Date($row.find(".start_date").val()+" 0:00:00"),
days = parseInt($row.find(".days").val(), 10);
console.log(date.getDate());
console.log(days);
if (!isNaN(date.getTime())) {
date.setDate(date.getDate() + days);
$row.find(".end_date").val(date.toInputFormat());
} else {
alert("Invalid Date");
}
});
Date.prototype.toInputFormat = function() {
var yyyy = this.getFullYear().toString();
var mm = (this.getMonth()+1).toString(); // getMonth() is zero-based
var dd = this.getDate().toString();
return yyyy + "-" + (mm[1]?mm:"0"+mm[0]) + "-" + (dd[1]?dd:"0"+dd[0]); // padding
};
})
(jQuery, this, document);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table>
<th>
start</th>
<th>end</th>
<th>interval</th>
<tr>
<td><input type="date" size="15" name="date[]" class="start_date" \>
<input type="button" size="10" value="ok" class="addSkip"></td>
<td><input type="text" size="15" name="nextdate[]" class="end_date" \> </td>
<td><input type="text" size="3" name="skip[]" class="days" value="10"> </td>
</tr>
<tr>
<td><input type="date" size="15" name="date[]" class="start_date" \>
<input type="button" size="10" value="ok" class="addSkip"></td>
<td><input type="text" size="15" name="nextdate[]" class="end_date" \> </td>
<td><input type="text" size="3" name="skip[]" class="days" value="10"> </td>
</tr>
<tr>
<td><input type="date" size="15" name="date[]" class="start_date" \>
<input type="button" size="10" value="ok" class="addSkip" ></td>
<td><input type="text" size="15" name="nextdate[]" class="end_date" \> </td>
<td><input type="text" size="3" name="skip[]" class="days" value="10">
</tr>
</table>
期望的結果
start end interval
13/10/17 20/10/17 7
20/10/17 23/10/17 3
23/10/17 30/10/17 7
...... 等
你想要的所有行會顯示相同的結束日期?或者所有的結束都必須顯示相應的開始對應的值? –
我已經用表格更新了這個問題,請看看,謝謝你 – epiphany
所以,你希望在第一個start_date中插入一個日期到2017-01-01(ex),腳本詳細說明相對的end_date並設置另一個start_date到2017-01-02,2017-01-03等詳細闡述每個end_date,對吧? –