zoukankan      html  css  js  c++  java
  • 用JavaScript实现全选-反选

    实现全选-反选

    在日常生活我们会遇到需要全选-反选的地方,其实用JavaScript也能实现。
    样式如下所示:
    在这里插入图片描述

    样式代码如下所示:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
    	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    	<title>全选-反选</title>
    </head>
    <body>
    	<h2>请选择您的兴趣爱好</h2>
    	<input type="checkbox" value="全选"  id="chkAll"/><label for="chkAll">全选</label>
    	<input type="button" value="反选" id="reverse" />
    	<ul id="favors">
    		<li><input type="checkbox" value="" />打篮球</li>
    		<li><input type="checkbox" value="" />打篮球</li>
    		<li><input type="checkbox" value="" />看电影</li>
    		<li><input type="checkbox" value="" />看书</li>
    		<li><input type="checkbox" value="" />书法</li>
    		<li><input type="checkbox" value="" />唱歌</li>
    		<li><input type="checkbox" value="" />徒步旅行</li>
    	</ul>
    </body>
    </html>
    

    JavaScript部分如下所示:

    function $(id){
    				return document.getElementById(id);
    			}
    			window.onload = function(){
    
    				$("chkAll").onclick = function(){
    					var fvs = $("favors").getElementsByTagName("input");
    					for (var i = 0; i < fvs.length; i++) {
    						fvs[i].checked = $("chkAll").checked; 
    					};
    				}
    
    				$("reverse").onclick = function(){
    					var ipts = $("favors").getElementsByTagName("input");
    					for (var i = 0; i < ipts.length; i++) {
    						ipts[i].checked = !ipts[i].checked;
    					};
    				}
    				var fvs = $("favors").getElementsByTagName("input");
    				for (var i = 0; i < fvs.length; i++) {
    					fvs[i].onclick = function(){
    						var  isChkAll = true;
    						for (var i = 0; i < fvs.length; i++) {
    							if(!fvs[i].checked){
    								isChkAll = false;
    								break;
    							}
    						};
    						$("chkAll").checked = isChkAll;
    					}
    				};
    		}
    
  • 相关阅读:
    什么是Code Review
    支撑5亿用户、1.5亿活跃用户的Twitter最新架构详解及相关实现
    shell的数组操作
    CDN(内容分发网络)技术原理
    云计算服务模型,第 3 部分: 软件即服务(PaaS)
    Mongodb
    360的开源项目
    用linux mail命令发送邮件[Linux]
    BZOJ2761:[JLOI2011]不重复数字(map)
    BZOJ1821:[JSOI2010]部落划分(并查集,二分)
  • 原文地址:https://www.cnblogs.com/hxz0618/p/12098435.html
Copyright © 2011-2022 走看看