我有两个输入字段,一个是开始日期,另一个是完成日期。我怎么能自动设置完成日期作为开始日期+ 1天,当我在第一个领域输入日期?
我的代码是这样的:
JQuery如何递增日期
<form>
Start: <input type="text" name="date_start" id="datepicker0">
Stop: <input type="text" name="date_stop" id="datepicker1">
</form>
我有两个输入字段,一个是开始日期,另一个是完成日期。我怎么能自动设置完成日期作为开始日期+ 1天,当我在第一个领域输入日期?
我的代码是这样的:
JQuery如何递增日期
<form>
Start: <input type="text" name="date_start" id="datepicker0">
Stop: <input type="text" name="date_stop" id="datepicker1">
</form>
演示 - http://jsfiddle.net/ffwr2/1/
$('#date1').datepicker();
$('#date2').datepicker();
$('#date1').change(function(){
var date1 = $('#date1').datepicker('getDate');
var date = new Date(Date.parse(date1));
date.setDate(date.getDate() + 1);
var newDate = date.toDateString();
newDate = new Date(Date.parse(newDate));
$('#date2').datepicker('setDate', newDate);
})
应该为'paste'和'keyup'事件添加相同的处理函数,因为'change'只会在失去焦点时触发(如果值已经改变)。 –
按照@ liho1eye的评论,如果你这样做,把它放在一个函数中,并从各自的处理程序中调用它们。 –
我知道这是一个古老的答案,但它为我工作。谢谢! – jvillian
我的猜测是使用['onSelect'](http://jqueryui.com/demos/datepicker/#event -onSelect)处理函数,你需要从第一个['getDate()'](http://jqueryui.com/demos/datepicker/#method-getDate),增加一天,然后调用['setDate()第二个是'](http://jqueryui.com/demos/datepicker/#method-setDate)。 –
你使用jQueryUi的DatePicker吗? –
@JaredFarrish我没有听到任何回应,但显然有人照顾了。 –