我想點擊按鈕並計算數量,但它不起作用。 和錯誤訊息:Uncaught ReferenceError:cnt 未定義 這是我的程式碼:
<!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>Make777</title> <link rel="stylesheet" href="./style.css"> </head> <body> <button type="button" class="btn-click" onclick="dongjak_button();">CLICK</button> <span>You Clicked This Button <span id="number"></span>Times!!!!!!</span> <script src="./script.js"></script> </body> </html>
"use strict"; function dongjak_button(){ cnt = 0; cnt++; document.getElementById("number").value = cnt; }
幫助。我希望 cnt
變數有效。並顯示在html上
P粉5877801032024-02-04 15:12:30
您必須使用 var
或 let
來宣告 JavaScript 變數。
在此處了解更多:https://www.w3schools.com/js/js_variables.asp
#"use strict"; function dongjak_button(){ let cnt = 0; cnt++; document.getElementById("number").textContent = cnt; }
程式碼仍然無法運作,因為您需要先從 #number
取得計數。
"use strict"; function dongjak_button(){ const number = document.getElementById("number"); const value = number.textContent; let cnt = value ? Number(value) : 0; cnt++; number.textContent = cnt; }
P粉6355097192024-02-04 11:33:27
您處於嚴格模式,且沒有宣告 cnt
變數。請參閱 MDN 文件。
您也無法變更 span
上的 value
— 您需要 textContent
。而且,您的 cnt
每次都會重置,因此您需要將變數儲存在函數之外。總而言之:
// stored outside the function so it increments rather than resets let cnt = 0; function dongjak_button(){ cnt++; // use textContent, not value; also add a space document.getElementById("number").textContent = cnt + ' '; }
You Clicked This Button Times!!!!!!