gpt4 book ai didi

javascript - 根据抵达日期和项目持续时间计算出发日期

转载 作者:行者123 更新时间:2023-11-28 03:37:53 24 4
gpt4 key购买 nike

E&P WordPress 插件评论中的学习示例

我自己发现了一些错误,但仍然无法使代码工作。

案例:从选择字段 (5|7|14|30|60) 中选择到达日期(日期选择器)和计划持续时间(以天为单位)。生成出发日期

来自插件所有者的这段代码根本没有任何文字

jQuery(document).ready(function(){
jQuery('[data-title="Departure"]').on('change',checkDates);
jQuery('[data-title="Program"]').on('change',checkDates);
});

function checkDates(){
var nbDays = jQuery('[data-title="Program"] option:selected').attr('data-price');
var startDate = moment(jQuery('[data-title="Arrival"]').datetimepicker('getDate'));
var endDate = startDate.subtract(nbDays,'days');
jQuery('[data-title="Departure"]').datetimepicker('setDate',endDate.toDate());

}

从第一个 View 中我发现他使用subtract而不是add

我使用https://momentjs.com/docs/Format date and Subtract days using Moment.js

var startdate = moment();
startdate = startdate.subtract(1, "days");

相等

var startdate = moment().subtract(1, "days");

这是我的版本:

jQuery(document).ready(function(){
jQuery('[data-title="Arrival"]').on('change',checkDates);
jQuery('[data-title="Program"]').on('change',checkDates);
});

function checkDates(){
var nbDays = jQuery('[data-title="Program"] option:selected').attr('data-price');
var startDate = moment(jQuery('[data-title="Arrival"]').datetimepicker('getDate'));
var endDate = moment().add(nbDays,'days');
jQuery('[data-title="Departure"]').datetimepicker('setDate',endDate.toDate());
}

仍然无法重新计算出发日期on.click并且计算天数不正确

最佳答案

我认为您得到了错误的结束日期,因为您正在执行 moment().add(...) ,它获取脚本执行时的当前日期(相当于 Date.现在())。

尝试使用 startDate 变量并使用 moment 原型(prototype)添加:

var endDate = startDate.add(nbDays,'days');

这将使 moment 添加额外的天数到 startDate 而不是当前日期。

最终结果:

function checkDates(){
var nbDays = jQuery('[data-title="Program"] option:selected').attr('data-price');
var startDate = moment(jQuery('[data-title="Arrival"]').datetimepicker('getDate'));
var endDate = startDate.add(nbDays,'days');
jQuery('[data-title="Departure"]').datetimepicker('setDate',endDate.toDate());
}

关于javascript - 根据抵达日期和项目持续时间计算出发日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57551731/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com