为什么索引值里面不能使用加法呢?减法就可以啊

<!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 checkone(){

            var j=document.getElementById("wb").value;

            var hobby=document.getElementsByName("hobby");

           // var hobby1=document.getElementById("hobby"+j);

            //hobby[j-1].checked=true;

            //hobby1.checked=true

            if(j>0&&j<hobby.length+1){


            hobby[j-1].checked=true;

            

            }else{

                alert("您填写的数字非选项项!")

            }

            

        //为什么索引值里面只能用j-1 不能用j+1呢??

        /*

         if(j>-2&&j<hobby.length){

        

                    hobby[j+1].checked=true;

                    

                    }else{

                        alert("您填写的数字非选项项!")

                    }

*/

         // 任务3

        

        }

        

        </script>

    </body>

</html>


改改名
浏览 1224回答 1
1回答

html小学生

这是类型转换的问题吧  - * / 都属于隐式转换符,是可以把一个字符串转换成数字的(前提字符串里都是数字)但是+却有连接字符串的功能,所以在这时候+并不是算术运算中的加号。你需要先把前面的字符串parseInt一下或者怎么样转成数字,再运算。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript