Javascript 向Jquery中的日期值添加天数

Javascript 向Jquery中的日期值添加天数,javascript,jquery,Javascript,Jquery,我有一个简单的下拉列表显示日期。是否有办法使用jQuery将日期(例如2020年2月2日星期日)显示在下拉列表中,而不仅仅是日期 var options=document.getElementsByTagName('.date选项'); 对于(i=0;i

我有一个简单的下拉列表显示日期。是否有办法使用jQuery将日期(例如2020年2月2日星期日)显示在下拉列表中,而不仅仅是日期

var options=document.getElementsByTagName('.date选项');
对于(i=0;i

2020年2月2日
2020年2月9日
2020年2月16日
2020年2月23日
2020年3月1日
2020年3月8日
2020年3月15日
2020年3月22日
2020年3月29日
2020年4月5日
2020年4月12日
2020年4月19日
2020年4月26日
2020年5月3日
2020年5月10日
2020年5月17日
2020年5月24日
2020年5月31日
2020年6月7日
2020年6月14日
2020年6月21日
2020年6月28日
2020年7月5日
2020年7月12日
您可以尝试:
新日期('2020-02-02')。getDay()

getDay
将返回一个介于0-6和0之间的数字,根据当地时间,这将是一周的第一天


new Date()
中使用的
2020-02-02
假设在您的值中设置时可用。然后,您可以在数字和要显示的日期字符串之间建立一个映射图

我想您正在寻找
toDateString()
函数

输出

Thu Jan 09 2020

您只需将日期字符串转换为日期对象,如下所示:

var dateForSelectValue = new Date('2020-01-07');
或者,如果您已经有一个日期对象,您可以像下面那样附加它

returnDayString(dateForSelectValue.getDay()) + '' + dateForSelectValue.getDate() + ',' + dateForSelectValue.getFullYear();
上面的方法
dateForSelectValue.getDay()
返回一个从0到6的整数,其中1是星期一,依此类推。因此,您只需编写一个javascript函数
returnDayString
,它
return
Day name from Day Integer


希望对您有所帮助

您可以使用
toLocaleDateString
并提供格式和区域

var format={weekday:'long',year:'numeric',month:'long',day:'numeric'};
var options=document.getElementsByTagName('option');
对于(i=0;i

纯js版本-您可以迭代所有选项,并使用

var dateValueFromOption = new Date(optionValue);
var stringDateFromOption = dateValueFromOption.toDateString();
然后用新的日期格式更改选项文本
stringDateFromOption

var dropDownElement=document.getElementById(“巡演日期”)
const dropDownOptions=dropDownElement.options;
对于(i=0;i

要实现这一点,您可以使用日期对象的
getDay()
getMonth()
函数来获取日期索引,您可以将其转换为文本值。然后,您可以向
text()
提供一个函数,该函数计算给定
选项的完整日期并返回新值。试试这个:

var-days=[‘星期日’、‘星期一’、‘星期二’、‘星期三’、‘星期四’、‘星期五’、‘星期六’];
var月数=[‘一月’、‘二月’、‘三月’、‘四月’、‘五月’、‘六月’、‘七月’、‘八月’、‘九月’、‘十月’、‘十一月’、‘十二月’];
$('.date选项').text(函数(){
var d=新日期($(this.val());
返回`${days[d.getDay()]}${months[d.getMonths()]}${d.getDate()},${d.getFullYear()}`;
});

2020年2月2日
2020年2月9日
2020年2月16日
2020年2月23日
2020年3月1日
2020年3月8日
2020年3月15日
2020年3月22日
2020年3月29日
2020年4月5日
2020年4月12日
2020年4月19日
2020年4月26日
2020年5月3日
2020年5月10日
2020年5月17日
2020年5月24日
2020年5月31日
2020年6月7日
2020年6月14日
2020年6月21日
2020年6月28日
2020年7月5日
2020年7月12日

是。如果您有需要帮助调试的特定问题,请将您的JS添加到问题中。在问题中添加了代码段,但似乎无法使其正常工作。您如何添加该代码段以使下拉列表也显示日期值?在问题中添加了代码段,然而,如果不使用moment.js,这可能吗?@user38208找到了一种使用vanilla js的方法。没问题,很乐意提供帮助。请注意,我添加了另一个示例,该示例仅附加日期名称,而不是计算和格式化完整日期。
var dateValueFromOption = new Date(optionValue);
var stringDateFromOption = dateValueFromOption.toDateString();