我试图用X天更新5个文本字段,未来text1、text2和text3需要转发29天,显示相同日期的text4和text5需要比其他字段多2天
目前发生的事情是text1显示了今天的日期,text2-4显示了未来的29天,而text5显示了超过其他日期的2天。
var current_date = new Date();
var number_of_dateBoxes = 5;
for (var i = 0; i <= number_of_dateBoxes; i++){
$w('#text'+ i).text = current_date.toLocaleDateString();
if (i==1) {
current_date.setDate(current_date.getDate()+29);
}
else if (i==2 || i==3) {
current_date.setDate(current_date.getDate()-29);
current_date.setDate(current_date.getDate()+29);
}
else if (i==4 || i==5) {
current_date.setDate(current_date.getDate()-29);
current_date.setDate(current_date.getDate()+31);
}
}发布于 2022-07-29 10:37:02
首先,我不知道$w是什么,但我相信它来自于您使用的某个库,而且由于您编写了一些东西,所以它意味着它可以工作,所以这并不重要。
您必须将current_date声明放在循环中,$w('#text'+ i).text放在循环的末尾。还删除一些不需要的行,并按以下方式排列它们:
var number_of_dateBoxes = 5;
for (var i = 0; i <= number_of_dateBoxes; i++){
var current_date = new Date();
if (i==1 || i==2 || i==3) {
current_date.setDate(current_date.getDate()+29);
}
else if (i==4 || i==5) {
current_date.setDate(current_date.getDate()+31);
}
$w('#text'+ i).text = current_date.toLocaleDateString();
}https://stackoverflow.com/questions/73164992
复制相似问题