我有两个输入字段fromDate和toDate(都是date)。我使用datepicker作为输入字段fromDate。toDate是只读的,并且依赖于fromDate。也就是说,toDate的日期是6+。例如,如果fromDate是11/30/2014,则toDate是12/6/2014。
我的jsp代码是
<input type="text" class="form-control dpd1" id="fromDate" name="fromDate">
<span class="input-group-addon">To</span>
<input type="text" class="form-control dpd2" id="toDate" name="toDate" readonly/>
和js代码为:$('.dpd1').datepicker();
谢谢
您可以使用jQuery和change()来实现这一点。在更改中,您可以获取FromDate
的值,并使用Date对象为ToDate
输入创建新值。
$(function() {
$('#fromDate').change(function() {
var fromDateValue = $(this).val();
var toDateValue = new Date();
// some operations
$('#toDate').val(yourToDate);
});
})
你可以用这个增加6天:
var today = new Date();
var todayplus6days= new Date(today);
todayplus6days.setDate(today.getDate()+6);
更新:
JSfiddle:http://jsfidle.net/8dx0sley/1/
$(function() {
$('#fromDate').change(function() {
var fromDateValue = $(this).val();
var toDateValue = new Date(fromDateValue);
toDateValue.setDate(toDateValue.getDate()+6);
var sDate = toDateValue.getFullYear() + '-' + (toDateValue.getMonth()+1) + '-' + toDateValue.getDate();
$('#toDate').val(sDate);
});
})
我想你在找这个。
$("#from").datepicker({
onClose: function (selectedDate, instance) {
if (selectedDate != '') { //added this to fix the issue
$("#to").datepicker("option", "minDate", selectedDate);
var date = $.datepicker.parseDate(instance.settings.dateFormat, selectedDate, instance.settings);
date.setDate(date.getDate() + 6);
console.log(selectedDate, date);
$("#to").datepicker("option", "minDate", date);
}
}
});