Jquery 在datetimepicker中选择一周的最后一天

Jquery 在datetimepicker中选择一周的最后一天,jquery,momentjs,tempus-dominus-datetimepicker,Jquery,Momentjs,Tempus Dominus Datetimepicker,我正在使用moment.js尝试选择datetimepicker中选择的一周的最后一天,但它会为每周的最后一天返回一个连续循环。我不确定我做错了什么,请有人帮帮我 这是我试过的JS JS 谢谢大家! 在您的示例中,您没有选择一周的最后一天,而是通过使用矩…day7选择下一周的星期日。然后设置该值,这将再次触发on change函数,将该值设置为一周后的星期日。等等连续循环 因此,您需要将时刻…第7天更改为时刻…第6天,这将选择本周的星期六。在第二次尝试中,它不会再次更改值,循环停止 如果你想选择

我正在使用moment.js尝试选择datetimepicker中选择的一周的最后一天,但它会为每周的最后一天返回一个连续循环。我不确定我做错了什么,请有人帮帮我

这是我试过的JS

JS


谢谢大家!

在您的示例中,您没有选择一周的最后一天,而是通过使用矩…day7选择下一周的星期日。然后设置该值,这将再次触发on change函数,将该值设置为一周后的星期日。等等连续循环

因此,您需要将时刻…第7天更改为时刻…第6天,这将选择本周的星期六。在第二次尝试中,它不会再次更改值,循环停止

如果你想选择下一个星期天作为周末,而不是周六,我建议你做如下事情

$(datePick).on('change.datetimepicker', () => {
    var datetimePicker = $("#datetimepicker1").val();
    if (moment(datetimePicker.day() !== 0) {
        lastDate = moment(datetimePicker, "YYYY-MM-DD").day(7).format("YYYY-MM-DD");
        $(datePick).val(lastDate);
    }
});

变量datePick-在哪里定义?这就是我可以看到你从中得到循环的地方。它作为一个全局变量在函数之外,它有什么值?var datePick=$datetimepicker1;谢谢,成功了!:它两次触发了事件,这是因为发生了变化吗?我需要把星期天作为一周的最后一天,因为我住在那里。但是非常感谢你!很高兴它起作用了。是的,on更改触发了第二次执行,但是添加的if语句阻止了进一步的调用。如果你选择一个星期天,它只会触发一次。
$(datePick).on('change.datetimepicker', () => {
    var datetimePicker = $("#datetimepicker1").val();
    if (moment(datetimePicker.day() !== 0) {
        lastDate = moment(datetimePicker, "YYYY-MM-DD").day(7).format("YYYY-MM-DD");
        $(datePick).val(lastDate);
    }
});