jQuery 对复选框的简单应用

jQuery 对复选框的简单应用
参考资料:
《锋利的jQuery》    作者: 单东林 张晓菲 魏然    出版社: 人民邮电出版社

页面初始化后效果如图:
页面初始化
代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
	  	<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
		<script type="text/javascript">
			$(function() {
				//"全选/取消全选"元素 click 事件
				$("#checkAll").click(function() {
					$(":checkbox[name = games]").attr("checked", $(this).is(":checked"));
				});
				
				//反选按钮 click 事件
				$("#toggle").click(function() {
					$(":checkbox[name = games]").each(function() {
						$(this).attr("checked", !$(this).attr("checked"));
						//this.checked = !this.checked;	//可用原生 JavaScript 简化上句代码
					});
					setCheckedState();
					return false;		//阻止表单提交
				});
				
				//选项元素 click 事件
				$(":checkbox[name = games]").click(function() {
					setCheckedState();
				});
			});	
			
			//设置"全选/取消全选"元素的勾选状态
			function setCheckedState() {
				//获取选项元素
				var $checkboxes = $(":checkbox[name = games]");
				//根据选项元素的勾选状态,设置"全选/取消全选"元素的勾选状态
				$("#checkAll").attr("checked", $checkboxes.length == $checkboxes.filter(":checked").length);
			}
		</script>  	
  	</head>
  
  	<!-- HTML -->
  	<body>
  		<form>
  			你玩过的游戏有:
  			<input type="checkbox" id="checkAll" />全选/取消全选
  			<button id="toggle">反选</button><br /><br />
  			<input type="checkbox" name="games" value="World Of Warcraft" />World Of Warcraft
  			<input type="checkbox" name="games" value="Warcraft" />Warcraft
  			<input type="checkbox" name="games" value="Starcraft" />Starcraft
  			<input type="checkbox" name="games" value="Diablo" />Diablo
  		</form>
  	</body>
</html>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值