checkbox input 输入控制练习(过滤小数、非数字、超范围)

<!--
此页是对CheckBox和input框的练习,任务
1.实现当点击"全选"按钮时,将选中所有的复选项。
提示:document.getElementsByTagName("input")获取的是所有input标签,包括复选项和按钮,所以要判断是否是复选项,如是选中。
2.实现当点击"全不选"按钮时,将取消所有选中的复选项。
3.在文本框中输入输入1-6数值,当点击"确定"按钮时,根据输入的数值,通过id选中相应的复选项。
提示:要对输入值进行判断parseInt(j)>6||parseInt(j)<1||isNaN(j)||j.indexOf(".")!=-1,不能是>6 <1 小数 不能是非数字
当提示输入有误后应该清空输入框document.getElementById("wb").value='';
同样,输入正确执行选择之后也要清空输入框,方便下一次选择。
-->
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
        <title>checkbox练习</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");
           
          // 任务1 
          for(var i=0;i<hobby.length;i++){
           if(hobby[i].type=="checkbox"){
               hobby[i].checked=true;
              }
           }
          }
        function clearall(){
            var hobby = document.getElementsByName("hobby");
            
         // 任务2    
          for(var i=0;i<hobby.length;i++){
              if(hobby[i].type=="checkbox"){
                  hobby[i].checked=false;
              }
          }  
        }
        // 任务3
        function checkone(){
            var j=document.getElementById("wb").value;
            if(parseInt(j)>6||parseInt(j)<1||isNaN(j)||j.indexOf(".")!=-1)
            {
                alert("请输入1-6之间的整数");
                document.getElementById("wb").value='';
            }else{
				var hobby=document.getElementsByName("hobby");
				hobby[j-1].checked=true;
				document.getElementById("wb").value='';
            }   
        }
        
        </script>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_36830885/article/details/79098783
今日推荐