JQuery DatePicker +1 天
+1 Day on JQuery DatePicker
我想在所选日期的后一天发出。
$('#toDate').datepicker({
inline: true,
altField: '#x',
dateFormat: "dd-mm-yy", //day
altFormat: "yy-mm-dd", //year
monthNames: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"],
dayNamesMin: ["Pa", "Pt", "Sl", "Ça", "Pe", "Cu", "Ct"],
firstDay: 1,
numberOfMonths: 1,
onSelect: function(dateText, inst) {
var dateup = ('0' + (parseInt(inst.selectedDay) + 1)).slice(-2);
var monthup = ('0' + (parseInt(inst.selectedMonth) + 1)).slice(-2);
var newdate = inst.selectedYear+'-'+monthup+'-'+dateup;
socket.emit('sockettoDate', newdate);
}
});
此代码无法计算月份最后一天之后的日期。
例如,如果选择 2017-12-31,则结果为 2017-12-32。有什么解决办法吗?
这是因为您做事时使用的是数字,而不是日期。要修复它,您需要先将其转换为日期。
要从 jquery 日期选择器插件获取日期,请使用:
var currentDate = $("#toDate").datepicker('getDate').getDate();
然后您可以在这个答案之后添加天数:Incrementing a date in JavaScript
我刚刚完成了一个非常复杂的 jquery 日历,我发现 momentjs 是一个救星,所以我建议你也得到它。有了它,您可以执行以下操作:currentDate.add(1, 'days');
让开发人员的工作变得更加轻松。
您可以为此使用 JavaScript 日期对象。
onSelect: function(dateText, inst) {
var date = new Date(dateText);
var newdate = new Date(date);
newdate.setDate(newdate.getDate() + 31 );
socket.emit('sockettoDate', newdate);
}
但我的建议是使用 momentjs 进行任何日期和时间计算。用于日期和时间操作的优秀库。
如果您的日期格式与您在示例中给出的格式相同,那么您可以使用以下函数将天数添加到日期中。获得新日期后,您可以使用新添加的日期
function addDays(date, days) {
var result = new Date(date);
result.setDate(result.getDate() + days);
return result;
}
使用
addDays(新日期('2017-12-31'),1);
OUT 放
2018 年 1 月 1 日星期一 00:00:00 GMT+0530(印度标准时间)
我想在所选日期的后一天发出。
$('#toDate').datepicker({
inline: true,
altField: '#x',
dateFormat: "dd-mm-yy", //day
altFormat: "yy-mm-dd", //year
monthNames: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"],
dayNamesMin: ["Pa", "Pt", "Sl", "Ça", "Pe", "Cu", "Ct"],
firstDay: 1,
numberOfMonths: 1,
onSelect: function(dateText, inst) {
var dateup = ('0' + (parseInt(inst.selectedDay) + 1)).slice(-2);
var monthup = ('0' + (parseInt(inst.selectedMonth) + 1)).slice(-2);
var newdate = inst.selectedYear+'-'+monthup+'-'+dateup;
socket.emit('sockettoDate', newdate);
}
});
此代码无法计算月份最后一天之后的日期。
例如,如果选择 2017-12-31,则结果为 2017-12-32。有什么解决办法吗?
这是因为您做事时使用的是数字,而不是日期。要修复它,您需要先将其转换为日期。
要从 jquery 日期选择器插件获取日期,请使用:
var currentDate = $("#toDate").datepicker('getDate').getDate();
然后您可以在这个答案之后添加天数:Incrementing a date in JavaScript
我刚刚完成了一个非常复杂的 jquery 日历,我发现 momentjs 是一个救星,所以我建议你也得到它。有了它,您可以执行以下操作:currentDate.add(1, 'days');
让开发人员的工作变得更加轻松。
您可以为此使用 JavaScript 日期对象。
onSelect: function(dateText, inst) {
var date = new Date(dateText);
var newdate = new Date(date);
newdate.setDate(newdate.getDate() + 31 );
socket.emit('sockettoDate', newdate);
}
但我的建议是使用 momentjs 进行任何日期和时间计算。用于日期和时间操作的优秀库。
如果您的日期格式与您在示例中给出的格式相同,那么您可以使用以下函数将天数添加到日期中。获得新日期后,您可以使用新添加的日期
function addDays(date, days) {
var result = new Date(date);
result.setDate(result.getDate() + days);
return result;
}
使用
addDays(新日期('2017-12-31'),1);
OUT 放
2018 年 1 月 1 日星期一 00:00:00 GMT+0530(印度标准时间)