【发布时间】:2020-07-20 02:31:55
【问题描述】:
为什么这段代码只给我默认值
<!DOCTYPE html>
<html>
<body>
<p id= "demo"></p>
<input id="age" />
<button onclick="document.getElementById('demo').innerHTML=text">try it</button>
<script>
var text;
age = document.getElementById('age').value;
switch (age) {
case 10:
text = "diuble";
break;
case 13:
text = "puberty";
break;
case 18:
text = "Beer!";
break;
default:
text = "Looking forward to the Weekend";
}
</script>
</body>
</html>
我尝试将 document.getElementById('age').value 更改为 18,当我这样做时,它会给我作为啤酒的输出!但现在它只给我期待....
【问题讨论】:
-
document.getElementById('age').value我很确定这会给出一个字符串,您的开关案例是数字,因此它们不匹配。而<input id="age" />没有值 -
因为代码只在页面加载时运行......它不会神奇地继续运行。这就是事件处理程序的用途。
-
在
document.getElementById('age').value前面加上一个加号,将其授予一个号码。 -
@Akxe 需要的不仅仅是
+
标签: javascript html input switch-statement