jquery使用date.js将月份添加到日期
我使用的是date.js,我想在设定的日期上增加一定数量的月份 这里的代码可以正常工作,这给今天增加了1个月jquery使用date.js将月份添加到日期,jquery,date,Jquery,Date,我使用的是date.js,我想在设定的日期上增加一定数量的月份 这里的代码可以正常工作,这给今天增加了1个月 var start_date = $("#start_date").val(); expiry_date = Date.now().addMonths(1); $("#expiry_date").val(expiry_date.toString("dd-MM-yyyy")); 但是,当我使用 expiry_date = start_date.addMonths(1); 我收到一个
var start_date = $("#start_date").val();
expiry_date = Date.now().addMonths(1);
$("#expiry_date").val(expiry_date.toString("dd-MM-yyyy"));
但是,当我使用
expiry_date = start_date.addMonths(1);
我收到一个错误,告诉我start\u date
不是有效的函数
更新:
$("#start_date, #payment_period").on('change', function() {
var start_date = Date.parse($("#start_date").val());
var period = $("#payment_period").val();
expiry_date = start_date.addMonths(period);
$("#expiry_date").val(expiry_date.toString("dd-MM-yyyy"));
});
这是我现在使用的代码,工作正常,但如果页面加载时,#start_date
输入中已有值,并且其中一个输入有更改,则不会显示正确的日期
例如,如果页面在#start_date
输入中加载12-12-2016
,我将其更改为13-12-2016
,并且期间为24
则#expiration_date
输入将更改为13-09-2109
,其中应为13-09-2019
如果我清除#start_date
输入并输入一个新值,但它不适用于现有值,则其工作正常
var start_date = Date.parse($("#start_date").val());
var period = parseInt($("#payment_period").val());
更新:
您可以通过.trigger('change')
或在文档准备就绪时直接调用方法.change()
来触发change
事件
例如:
$(“#开始日期,#付款期”).change()
由于date.js
方法addMonths()
需要一个Number
参数,您应该首先强制您的句号为一个数字(通过parseInt()
),并检查它是否是一个NaN
此方法有效-检查我的更新,我遇到了一个进一步的问题,代码中的答案对社区没有用处。请查看您的更新是否有助于解决我遇到的问题?@charlie是的,应该有帮助