在任务三中,我怎么判断用户输入的是数字而不是字母abc;例如用户输入的是12ab3,我应该如何跳过ab,将123复选框勾上?

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

hechou

2015-12-18 21:38

<!DOCTYPE HTML>

<html>

    <head>

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

        <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 (var i = 0; i < hobby.length; i++) {

            hobby[i].checked=true;

            }

           

        }

        function clearall(){

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

            for (var i = 0; i < hobby.length; i++) {

            hobby[i].checked=false;

            }        }

        

        function checkone(){

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

            var hobby = document.getElementsByTagName("input");

            for (var i = 0; i < j.length; i++) 

            {

            if(j[i]>6||j[i]<1){

            alert("你丫的参数输错了");

            continue;

            }

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

            // alert(typeof parseInt(j[i]));

            };

         // 任务3

        

        }

        

        </script>

    </body>

</html>


写回答 关注

2回答

  • 玩lol不
    2015-12-19 13:48:44
    已采纳

    j不是数组呀,你怎么当数组用了???

    hechou

    是的,不是数组!是字符串,但我这样用为什么能判断输入的数字是1-6之间呢??

    2015-12-19 20:29:46

    共 1 条回复 >

  • china_hechuan
    2015-12-18 21:53:51

    用正则表达式

    hechou

    谢谢,我看看!

    2015-12-19 20:34:18

    共 1 条回复 >

JavaScript进阶篇

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

468060 学习 · 21891 问题

查看课程

相似问题