[英]show appointments/ dates of today with JavaScript function
我想在HTML中顯示當天的實際約會。 我想用JavaScript實現它,我得到約會的名稱和excel表的日期。 我已經寫了一些東西,但它不起作用,而不是我想要的方式。 碼:
function appointment() { var event = []; var temp = []; event[0] = ["17.12.2015", "test1"]; event[1] = ["11.12.2015", "TestToday"]; var datum = new Date(); var today = today.getDate(); var month = today.getMonth() + 1; for (i = 0; i < event.length; i++) { if (event[i]) { if (event[i][0] == today && event[i][0] == month) { event[i][0] = temp[i]; } } else { break; } } if (temp.length == 0) { document.write("Today is nothing to do"); } else { var x2 = "Today " + ((temp.length == 1) ? "is following event: " : "are following events: "); for (i = 0; i < temp.length; i++) { x2 += ((temp[i] > 0) ? ((temp[i] == (temp.length - 1)) ? " and " : ", ") : " ") + temp[event[1]][3] + "(" + temp[event[i]][2] + ")"; } document.write(x2 + " appointment"); } }
問題:我怎樣才能使它工作? 如何閱讀excel表中的約會和日期?
問題出在你的for循環中。 要比較今天的日期應該是dd.mm.yy
格式,因為它在數組中:
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10)
dd='0'+dd;
if(mm<10)
mm='0'+mm;
var today = dd+'.'+mm+'.'+yyyy;
for (i = 0; i < event.length; i++) {
if (event[i]) {
if (event[i][0] == today) {
temp[i] = event[i][0];
}
}
// Don't break your for loop
}
將您的代碼更改為
var datum = new Date().setHours(0,0,0,0);
//you don't need today and month
if (event[i]) {
eventDate = new Date(event[i][0].split(".").reverse()).getTime();
if (datum === eventDate) {
temp.push(event[i][1]); //there was a problem here as well
}
}
else {
break;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.