我想单击按钮并计算数量,但它不起作用。 和错误消息: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!!!!!!