[英]JavaScript onclick Function call not working
text += "<button id=next onclick=calendar(nextDate)>"
text += "<button id=next onclick=calendar(prevDate)>"
此代碼似乎無法正常運行。 我不知道問題是什么。
function calendar(date) {
...........
text += "<tr>"
text += "<td colspan=7>"
text += "<button id=prev onclick=calendar(prevDate)>"
text += "◀"
text += "</button>"
text += "<button id=next onclick=calendar(nextDate)>"
text += "▶"
text += "</button>"
text += "</tr>"
text += "</td>"
text += "</table>";
document.getElementById("cal").innerHTML = text;
}
calendar();
假設已將onClick函數設置為此功能,則在行“;”的末尾缺少分號。
text += "<button id=prev onclick=calendar(prevDate)>" text += "<button id=next onclick=calendar(nextDate)>"
prevDate
和nextDate
而不是它們的值,但是由於它們周圍沒有引號,因此javascript會嘗試找到這兩個變量,但它將無法(除非它們位於全局范圍內) ) (;)
,這可能不會造成問題,但是使用它們仍然是一個好主意 您可以通過以下兩種方法正確地傳遞上一個和下一個日期:
text += "<button id='prev' onclick='calendar(" + prevDate + ")'>";
text += "<button id='next' onclick='calendar(" + nextDate + ")'>";
text += `<button id="prev" onclick="calendar('${prevDate}')">`;
text += `<button id="next" onclick="calendar('${nextDate}')">`;
text += "<button id='prev'>";
text += "<button id='next'>";
// This goes after document.getElementById("cal").innerHTML = text;
document.getElementById("prev").addEventListener("click", function (event) {
calendar(prevDate);
});
document.getElementById("next").addEventListener("click", function (event) {
calendar(nextDate);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.