用js jQuery 判断复选框 文本框不能为空

先弄得是简单的注册界面

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	 <style>
	 	
	 	*{
	 		padding: 0px;
	 		margin: 0px;
	 	}
	 	
	 	body{
	         background-color: #efefef;
	 	}
	 	.dvlogin{
	 	  width: 600px;
	 	  height: 480px;
	 	  position: absolute;
	 	  top: 50%;
	 	  left: 50%;
	 	  /*外边距 (上,右,下,左)*/
	 	  margin: -240px 0px 0px -300px;
	 	  /* box-shadow表示阴影   四个参数分别表示  水平偏移的距离,垂直偏移的距离,阴影的半径,阴影的颜色*/
	 	  box-shadow: 0px 0px 20px rgb(30, 93, 151);
	 	  background-color: white;
	 	}
	 	/* 登录头部样式*/
	 	.dvHeader{
	 		height: 30px;
	 		line-height: 30px;
	 		border-bottom: 1px solid #cdcdcd;
	 		padding: 10px;
	 		font-weight: bold;
	 	}
	 	
	 	/*登录身体的样式*/
	 	 .dvBody{
	 	 	 width: 400px;
	 	 	 padding: 70px 50px 0px 50px; 
	 	 	 margin: 0px auto;
	 	 }
	 	 
	 	 .section{
	 	 	height: 55px;
	 	 }
	 	 
	 	 .section label{
	 	 	/*行级元素变为块级元素*/
	 	 	display: block;
	 	 	width: 100px;
	 	 	float: left;
	 	 	text-align: right;
	 	 	margin-right: 10px;
	 	    font-size: 13px;
	 	    line-height: 25px;
	 	 }
	 	 .section span{
	 	 	font-size: 14px;
	 	 	
	 	 }
	 	 
	 	 .section input[type='text']{
	 	 	width: 200px;
	 	 	height: 25px;
	 	 	line-height: 25px;
	 	 	border: 1px solid #CDCDCD;
	 	 	
	 	 }
	 	 /*登录按钮的样式*/
 	 	 .btnReg{
 	 	 	width: 150px;
 	 	 	height: 30px;
 	 	 	line-height: 30px;
 	 	 	background-color: rgb(30, 93, 151);
 	 	 	border: none;
 	 	 	color: white;
 	 	 	margin-left: 120px;
 	 	 	 cursor: pointer;
 	 	 	 transition:all 5s;	 
	 	 }
	 	 /*鼠标移动上去的样式*/
	 	 .btnReg:hover{
	 	 	background-color: green;
	 	 }
	 </style>
	</head>
	<body>
		
		<div class="dvlogin">
			<!--
            	作者:offline
            	时间:2016-02-27
            	描述:
            	页面的头部
            -->
			 <div  class="dvHeader">
			 	南京信息工程大学
			 </div>
			  <div class="dvBody">
			  	 <div class="section">
			  	 	 <label>
			  	 	 	用户名
			  	 	 </label>
			  	 	  <input type="text"  id="userName" placeholder="请输入用户名"/>
			  	 	
			  	 </div>
			  	  <div class="section">
			  	 	 <label>
			  	 	 	密码
			  	 	 </label>
			  	 	  <input type="text"   placeholder="请输入密码"  />
			  	 </div>
			  	 
			  	  <div class="section">
			  	 	 <label>
			  	 	 	性别
			  	 	 </label>
			  	 	 <span>男</span>
			  	 	 <input type="radio" class ="sex"   class="sex" />
			  	 	 
			  	 	 <span>女</span>
			  	 	 <input type="radio" class="sex"  class="sex" />
			  	 </div>
			  	 
			  	 
			  	  <div class="section">
			  	 	 <label>
			  	 	 	爱好
			  	 	 </label>
			  	 	<span>王者荣耀</span>
			  	 	<input type="checkbox"  name="hobby" class="hobby" />
			  	 	<span>看NBA</span>
			  	 	<input   type="checkbox" name="hobby" class="hobby" />
			  	 </div>
			  	  <div class="section">
			  	 	 <input type="button" value="注册" class="btnReg" />
			  	 </div>
			  	
			  </div>
		</div>	
		<script type="text/javascript" src="js/jquery-3.3.1.min.js" ></script>
		 <script>
		 	$(function(){
		 		$(".btnReg").click(function(){
		 			//获取用户名的值
		 			var username= $("#userName").val();
		 			if(username==""){
		 				alert('用户名不能为空');
		 				return ;
		 			}
		 			
		 			var istrue=false;
		 			var  sex=$(".sex");
		 			for(var i=0;i<sex.length;i++){
		 				if(sex.eq(i).prop("checked")){
		 					istrue=true;
		 					break;
		 				}	
		 			}
		 			if(!istrue){
		 				 alert('必须选择性别');
		 				 return;	
		 			}
		 			
		 			if($(".hobby:checked").length==0){
		 				alert('必须选择爱好');
		 				return;
		 			}
		 			alert('验证成功');
		 		})
		 	});
		 </script>
		
	</body>
</html>
上面是用 JQuery来做 
 一种是用循环  var istrue=false; var sex=$(".sex");//获取sex的JQuery对象 循环遍历   sex.eq(i).prop("checked")

    一种是用获取checked的数量 如果为0 则都没选 所以提示  $(".hobby:checked").length==0

    如果没有class 可以就用name去做  $("input[name=hobby]:checked").length

也可以JS去做  比如性别选择不能为空

    var str =document.getElementByName("sex");

    var obj =str.length;

    var flag =false;

    for(i=0;i<obj;i++){

         if(str[i].checked==true) flag=true;

   if(!flag){

   alert("性别不能为空");

   return;

}


  


  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值