2017-07-25 65 views
0

我有一个datepicker插件,在那里我得到了一周中的一天(到目前为止一切都很好,并且工作正常)。如果我再次点击星期字段,则打开datepicker,但选定日期为今天(当天)。我想要的是当我点击datepicker时,它选择星期一的第一天(星期一)。从之前选定的一周获取一周中的第一天

例如,如果我选择了周28 of 2017,我想July 10, 2017的一天,当我点击datepicker

+1

你试过了什么? –

+1

你正在使用什么日期选择器?一个jQuery插件?一个独立的东西?原生? –

回答

1

您可以尝试一个简单的逻辑显示为选中。

  • 接受周数并乘以7.你将有第n天。
  • 创建一个变量(baseDay),该变量将保存要选择的日期。
  • 为这一天创建一个日期对象。
  • 现在获取该日期的日期,并从中减去baseDay。你会得到天数减去获得必要的日期。
  • 减去那些日子,你有你的约会。

function getStartOfWeek(weekNo) { 
 
    var baseDay = 1; // For Monday 
 
    var today = new Date(); 
 
    var date = new Date(today.getFullYear(), 0, weekNo * 7); 
 
    var day = date.getDay(); 
 

 
    console.log(date, date.getDay()) 
 
    if (day > baseDay) 
 
    date.setDate(date.getDate() - (day - baseDay)) 
 
    console.log(date, date.getDay()) 
 
} 
 

 
getStartOfWeek(28)

注:这不是完整的解决方案。以上逻辑是获得必要的日期。一旦你有一个日期,你将不得不将它设置为日期选择器。这部分将特定于所使用的插件,并且可以轻松加入。

+0

非常感谢! –

相关问题