javascript开关()是否提供默认值?

javascript开关()是否提供默认值?,javascript,html,input,switch-statement,Javascript,Html,Input,Switch Statement,为什么这个代码只给我默认值 <!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 = documen

为什么这个代码只给我默认值

<!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>

试试看 var文本; 年龄=document.getElementById('age')。值; 开关(年龄){ 案例10: text=“diuble”; 打破 案例13: text=“青春期”; 打破 案例18: text=“啤酒!”; 打破 违约: text=“期待周末”; }

我已经尝试将document.getElementById('age')。值更改为18,当我这样做时,它会将输出作为啤酒!但是现在它只给了我展望….

你没有调用函数
onclick
,并在加载文档时触发代码。正确的方法是:

函数getText(){ var文本; 年龄=document.getElementById('age')。值; 年龄=parseInt(年龄) 开关(年龄){ 案例10: text=“diuble”; 打破 案例13: text=“青春期”; 打破 案例18: text=“啤酒!”; 打破 违约: text=“期待周末”; } document.getElementById('demo').innerHTML=text }


试试看
document.getElementById('age')。value
我很确定这会给出一个字符串,您的开关盒是数字,所以它们不匹配。而
没有值,因为代码只在页面加载上运行。。。。它不会神奇地继续运行。这就是事件处理程序的作用。Asd在
文档.getElementById('age')前面加一个加号。value
将其赋予一个数字。@Akxe需要的不仅仅是
+