我这个怎么最后一个不能运行呢?

来源:9-4 区别getElementByID,getElementsByName,getElementsByTagName

慕前端0798377

2018-09-07 20:35

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
        <title>无标题文档</title>
    </head>
   
    <body>
        <form>
          请选择你爱好:<br>
          <input type="checkbox" name="hobby" id="hobby1">  音乐
          <input type="checkbox" name="hobby" id="hobby2">  登山
          <input type="checkbox" name="hobby" id="hobby3">  游泳
          <input type="checkbox" name="hobby" id="hobby4">  阅读
          <input type="checkbox" name="hobby" id="hobby5">  打球
          <input type="checkbox" name="hobby" id="hobby6">  跑步 <br>
          <input type="button" value = "全选" onclick = "checkall();">
          <input type="button" value = "全不选" onclick = "clearall();">
          <p>请输入您要选择爱好的序号,序号为1-6:</p>
          <input id="wb" name="wb" type="text" >
          <input name="ok" type="button" value="确定" onclick = "checkone();">
        </form>
        <script type="text/javascript">
        function checkall(){
            var hobby = document.getElementsByTagName("input");
          
            for(i=0;i<hobby.length;i++){
                hobby[i].checked=true;
            }  // 任务1
          
        }
        function clearall(){
            var hobby = document.getElementsByName("hobby");
           
            for(i=0;i<hobby.length;i++){
                hobby[i].checked=false;
            }// 任务2   
           
        }
       
        function checkone(){
          
            var j=document.getElementById("wb").value;
            var hobby = document.getElementsByName("hobby");
            switch("j"){
                case 1:
                    hobby[0].checked=true;
                    break;
                case 2:
                    hobby[1].checked=true;
                    break;
                case 3:
                    hobby[2].checked=true;
                    break;
                case 4:
                    hobby[3].checked=true;
                case 5:
                    hobby[4].checked=true;
                    break;
                case 6:
                    hobby[5].checked=true;
                    break;
            }// 任务3
       
        }
       
        </script>
    </body>
</html>

写回答 关注

2回答

  • 莫892897612
    2018-09-14 10:27:12

      其他不变, 这行switch(parseInt(j))这样就行了。

  • 慕沐5386735
    2018-09-09 22:01:44

    switch  后一定要用default: 结尾。

    还有你的j  变量,要用parseInt 转下,不然传递过来的是字符

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题