【问题标题】:Set different dates to default date and actual value of Jquery datepicker将不同的日期设置为 Jquery datepicker 的默认日期和实际值
【发布时间】:2020-06-05 16:33:25
【问题描述】:

我有两个带有预选日期的日期选择器字段,我需要做的是当用户在第一个日期选择器中选择任何新日期时,我需要将第二个日期选择器的默认值更改为将 10 天添加到新选择的第一个日期日期选择器,而不更改第二个日期选择器的实际值。 现在我正在重新初始化第二个日期选择器并通过 "defaultDate" 选项设置默认值。

$('#x').datepicker( 'destroy' );
$('#x').datepicker({
  defaultDate : "03/21/2020"
}); 

建议的代码

let dateFromPicker1 = $("#picker1").val();
let dt = new Date(dateFromPicker1 );
dt.setDate(dt.getDate()+10);
$('#picker2').datepicker( 'destroy' );
$('#picker2').datepicker({
  defaultDate : dt
});

但这不起作用,因为 datepicker 已经有一些值,所以我无法更改其默认值。

请某人解决我的问题。如果有人想要任何其他信息,请告诉我。

任何帮助将不胜感激。

【问题讨论】:

标签: javascript jquery datepicker jquery-ui-datepicker


【解决方案1】:

获取在第一个日期选择器上选择的日期并创建一个新的 Date 对象并将日期增加 10 并将其设置为第二个日期选择器默认值。

let dateFromPicker1 = <pick date from picker1>
let dt = new Date(dateFromPicker1 );
dt.setDate(dt.getDate()+10);

现在将 dt 设置为 picker2 默认值

【讨论】:

  • setDate 更改 datepicker 的值。我只需要更改弹出日历中选定的日期。
  • 没有 setDate 只改变 dt 变量的值,不是吗?
  • 我将代码更改为您建议的内容(有问题添加),但没有更改。如果我有什么问题,请告诉我
  • 这是您可以使用的最简单的解决方案,我不知道您在哪里做错了。分享您的完整代码,这可能会有所帮助
  • 问题是第二个日期选择器已经有一些日期,这就是为什么在更改第一个日期选择器的日期时我无法更改第二个日期选择器的默认日期。
猜你喜欢
  • 2012-10-29
  • 2013-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多