Javascript jQuery根据最近的输入值在许多输入上设置不同的日期
我有许多日期类型的输入(一个用于初始日期,一个用于每个阶段的新日期)和数字类型的输入,该输入应定义根据最近输入的“旧日期”值向所有“新日期”输入添加多少天。现在它根据第一个“旧日期”输入值更改所有日期Javascript jQuery根据最近的输入值在许多输入上设置不同的日期,javascript,jquery,Javascript,Jquery,我有许多日期类型的输入(一个用于初始日期,一个用于每个阶段的新日期)和数字类型的输入,该输入应定义根据最近输入的“旧日期”值向所有“新日期”输入添加多少天。现在它根据第一个“旧日期”输入值更改所有日期 函数calcNewDate(){ var addDays=parseInt($('#chdn').val(); $('.newDate').val(formatDate(新日期($('.oldDate').val()).setDate(新日期($('.oldDate').val()).getDa
函数calcNewDate(){
var addDays=parseInt($('#chdn').val();
$('.newDate').val(formatDate(新日期($('.oldDate').val()).setDate(新日期($('.oldDate').val()).getDate()+addDays));
}
函数格式日期(日期){
var d=新日期(日期),
月份=“”+(d.getMonth()+1),
日期=“”+d.getDate(),
year=d.getFullYear();
如果(月长<2)月='0'+月;
如果(日长<2)天='0'+天;
返回[年、月、日]。加入('-');
}
要添加到每个新日期的天数:
第一阶段
旧日期-新日期-
第二阶段
旧日期-新日期-
由于您有多个.newDate
,因此需要使用jQuery和方法循环访问每个.oldDate
:
$('.newDate').each(function(){
$(this).val(formatDate(new Date().setDate(new Date($(this).prevAll('.oldDate').val()).getDate() + addDays)));
});
演示:
函数calcNewDate(){
常量addDays=+$('#chdn').val();
$('.newDate')。每个(函数(){
$(this).val(formatDate(new Date().setDate)(new Date($(this).prevAll('.oldDate').val()).getDate()+addDays));
});
}
函数格式日期(日期){
var d=新日期(日期),
月份=“”+(d.getMonth()+1),
日期=“”+d.getDate(),
year=d.getFullYear();
如果(月长<2)月='0'+月;
如果(日长<2)天='0'+天;
返回[年、月、日]。加入('-');
}
要添加到每个新日期的天数:
第一阶段
旧日期-新日期-
第二阶段
旧日期-新日期-
不要使用内联事件句柄问题是您的目标是.oldDate
,它将返回包含.oldDate
的所有元素的列表.val()
将返回第一个元素的值。