所以我在innerHTML上遇到了問題。我有一個空數組buttons,我使用for循環填充它。然後使用另一個for循環將每個按鈕的innerHTML設為"Info",但是當我檢查我的網站時,按鈕仍然為空。
//数组 let buttons = []; //循环问题 for(let i = 0; i < 2; i++) { //填充按钮数组的循环 for(let l = 0; l < 4; l++) { buttons[l] = $(`#btn${l}`); } //循环设置按钮的innerHTML for(let s = 0; s < buttons.length; s++) { buttons[s].innerHTML = "Info"; } } <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Quiz Game</title> </head> <body> <!-- 主容器 --> <div class="main-container"> <!-- 头部 --> <h1 class="header" id="header">Quiz Game</h1> <!-- 按钮 --> <button id="btn0"></button> <button id="btn1"></button> <button id="btn2"></button> <button id="btn3"></button> </div> <script src="/library/jquery-3.6.3.min.js"></script> <script src="test1.js"></script> </body> </html>
使用jQuery,你應該呼叫
buttons[s].html("Info");
來設定innerHTML。然而,在這裡使用buttons[s].text("Info");
更好,因為實際上字串中沒有任何HTML標籤。你也可以使用一個選擇器來選擇所有以
"btn"
開頭的按鈕,然後一次設定它們的文字。