当我输入日期和开始日期时我正在使用jquery datepicker我需要计算自动计算显示结束日期
这是我的表单提交功能
$("#promocode").on('submit', function(e){
e.preventDefault(e);
var valid_days = $(this).find("[name='valid_days']").val();
var start_date= $(this).find("[name='start_date']").val();
var end_date = new Date($(this).val());
end_date.setDate(end_date.getDate() + valid_days);
var end= $('#end_date').val( (end_date.getMonth() + 1)+ '/' + end_date.getDate() + '/' + end_date.getFullYear() );
console.log(end);
});
当我输入日期和开始日期时,它会在结束日期字段中显示结束日期,如NaN/NaN/NaN
那么问题是有什么其他方法可以使用jquery datepicker
来获取我的结束日期答案 0 :(得分:1)
使用parseInt
之类的
// for number use ParseInt
var valid_days = parseInt($(this).find("[name='valid_days']").val());
并传递start_date
来计算其中的valid_days,如
var valid_days = parseInt($(this).find("[name='valid_days']").val());
var start_date= $(this).find("[name='start_date']").val();
var end_date = new Date(start_date); // pass start date here
end_date.setDate(end_date.getDate() + valid_days);
var end= $('#end_date').val( (end_date.getMonth() + 1)+ '/' + end_date.getDate() + '/' + end_date.getFullYear() );
console.log(end);
答案 1 :(得分:0)
你可以改变这个并试试吗?
git cherry-pick ^J H..K
答案 2 :(得分:0)
这可以帮到你。我并没有放弃整个代码,因为你似乎知道自己在做什么
function plusToDate(currentDate, unit, howMuch) {
var config = {
second: 1000, // 1000 miliseconds
minute: 60000,
hour: 3600000,
day: 86400000,
week: 604800000,
month: 2592000000, // Assuming 30 days in a month
year: 31536000000 // Assuming 365 days in year
};
var now = new Date(currentDate);
return new Date(now + config[unit] * howMuch);
}
这就是你使用它的方式
var today = new Date();
var theDayAfterTommorow = plusToDate(today, 'day', 2);