填充格式化日期表单选择菜单

时间:2014-08-18 18:03:48

标签: javascript jquery momentjs

您好Stackoverflow社区。

在我的应用程序中,我选择了用户选择日期选项的选项,并根据该选项相应地填充日期。

但是,日期或星期必须从星期日开始,到星期六结束。 对于月份选择,它始终从第一个开始。 本月将全部​​计入8月,接下来的2个月将从9月开始到10月底。

这是我到目前为止所写的内容

JsBin

如果您有

 Moments JS 
解决方案,我也欢迎

谢谢

1 个答案:

答案 0 :(得分:1)

我总是想了解js Date()的变幻莫测,所以我把这个FIDDLE放在一起。

它通过一系列功能使用标准的js数据操作,你可以很容易地找到它们。

我不确定你的意思是“月”,“两个月”和“六个月” - 我假设一个月是四个星期,而不是一个日历月。

编辑:我重读了你的文字,我会研究月份的定义。

这是JS函数:

function adddays(anydate1, daystoadd)
{
  var mydaystoadd = daystoadd;
  var daysadded = anydate1.getDate() + mydaystoadd;
  return new Date( anydate1.setDate( daysadded ) );
}

function startofweek( anydate )
{
  localdate = anydate;
  daydifference = 0;
  daydifference = localdate.getDate() - numericdayofweek( localdate );
  return new Date( localdate.setDate( daydifference ) );  
}

function textdayofweek(mydate)
{
  var dayarray = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
  return dayarray[ numericdayofweek(mydate) ];
}

function numericdayofweek( anydate7 )
{
  var localdate = anydate7;
  return localdate.getDay();
}

function todayfull() 
{
  return new Date();
}

function todayshort( mydate3 )
{
 localdate = mydate3;
 thedate =
 (localdate.getMonth() + 1) + '/' + 
  localdate.getDate() + '/' + 
  localdate.getFullYear();
  return thedate;
}