使用jquery实现省市二级联动和$.each( [0,1,2], function(i, n){{}以及 $("img").each(function(i){}两种遍历用法和append()方法

使用jquery实现省市二级联动
技术分析

1.jquery页面加载事件$(function(){})。
2.还有绑定就是jquery的change()事件。
3.在获取用户选择的省份this.value,this代表当前操作的元素。
4.jquery追加内容函数
apend: A.append(B) 将B追加到A的内容的末尾处(二级联动使用的是该方法)
appendTo: A.appendTo(B) 将A加到B内容的末尾处
5.jquery删除内容函数
empty()代码演示 (标签里面所有的节点全部删除)
代码

Hello, Person and person


$(“p”).empty();
结果:


remove()代码演示 (标签以及标签中内容全部删除)
代码

Hello

how are

you?


$(“p”).remove();
结果:how are
6.jquery遍历
jquery中的遍历方式一(二级联动使用时该遍历方式)

在这里插入图片描述
代码演示
$.each( [0,1,2], function(i, n){
alert( “Item #” + i + ": " + n );
});
[0,1,2]这个位置是一个数组或者一个对象
i:是角标 从0开始
n:数组里面的内容 0 1 2

jquery中的遍历方式二

在这里插入图片描述
代码演示
该遍历方式是适用于jquery对象,jquery选择器获取到的是多个元素,就可以遍历了。
$(“img”).each(function(i){
this.src = “test” + i + “.jpg”;
});

代码步骤
1.首先导入jquery库,并书写页面加载事件。
2.创建一个二维数组里面存放的是省级市。
3.确定事件为onchange()事件,并编写该事件。
4.获取用户选择的是哪一个省份。
5.把用户选择的省份和数据组中的作比较(这里注意了比较的是角标)。
6.省份相同在遍历省份里面的省级市。
7.在获取第二个下拉框,在使用$("#city").append("<option>"+n+"</option>")添加到第二个下拉框中即可。
代码展示
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>使用jQuery完成省市二级联动</title>
		<style type="text/css">
			.top{
				border: 1px solid red;
				width: 32.9%;
				height: 50px;
				float: left;
			}

			#clear{
				clear: both;
			}
			#menu{
				border: 1px solid blue;
				width: 99%;
				height: 40px;
				background-color: black;
			}
			#menu ul li{
				display: inline;
				color: white;
				font-size: 19px;
			}
			#bottom{
				text-align: center;
			}
			#contanier{
				border: 1px solid red;
				width: 99%;
				height: 600px;
				background: url(img/regist_bg.jpg);
				position: relative;
			}
			#content{
				border: 5px solid gray;
				width: 50%;
				height: 60%;
				position: absolute;
				top: 100px;
				left: 300px;
				background-color: white;
				padding-top: 50px;
			}
		</style>
		<script type="text/javascript" src="js/jquery-1.8.3.js" ></script>
		<script>
				//代码步骤
				//1.首先导入jquery库,并书写页面加载事件。
				//2.创建一个二维数组里面存放的是省级市。
				//3.确定事件为onchange()事件,并编写该事件。
				//4.获取用户选择的是哪一个省份。
				//5.把用户选择的省份和数据组中的作比较(这里注意了比较的是角标)。
				//6.省份相同在遍历省份里面的省级市。
				//7.在获取第二个下拉框,在使用$("#city").append("<option>"+n+"</option>")添加到第二个下拉框中即可。
				var provinecArr = new Array(3);
				provinecArr[0] = new Array("武汉市","黄冈市","襄阳市","荆州市");
				provinecArr[1] = new Array("长沙市","郴州市","株洲市","岳阳市");
				provinecArr[2] = new Array("石家庄市","邯郸市","廊坊市","保定市");
				provinecArr[3] = new Array("郑州市","洛阳市","开封市","安阳市");
				$(function(){
					$("#province").change(function(){
						//清除之前选择的省份地级市
						$("#city").empty();
						//这里获取到的是用户选择的省份		
						var	proVal = this.value;
						//$.each( [0,1,2], function(i, n)  [0,1,2]要遍历的数组。i是角标,n是数组中的每一个内容。
						$.each(provinecArr, function(i, n){
								//判断选择的省份,和数组中那个省份相同
  								if(i==proVal){
  									$.each(provinecArr[i],function(i,n){
  										$("#city").append("<option>"+n+"</option>")
  									});
  								}
						});
					});
				});
		</script>
	</head>
	<body>
		<div>
			<!--1.logo部分的div-->
			<div>
				<!--切分为3个小的div-->
				<div class="top">
					<img src="img/logo2.png" height="47px"/>
				</div>
				<div class="top">
					<img src="img/header.png" height="47px"/>
				</div>
				<div class="top" style="padding-top: 15px;height: 35px;">
					<a href="#">登录</a>
					<a href="#">注册</a>
					<a href="#">购物车</a>
				</div>
			</div>
			<!--清除浮动-->
			<div id="clear">
				
			</div>
			<!--2.导航栏部分的div-->
			<div id="menu">
				<ul>
					<li >首页</li>
					<li >电脑办公</li>
					<li >手机数码</li>
					<li >孕婴保健</li>
					<li >鞋靴箱包</li>
				</ul>
			</div>
			<!--3.中间注册表单部分div-->
			<div id="contanier">
				<div id="content">
					<table border="1" align="center" cellpadding="0" cellspacing="0" width="70%" height="70%" bgcolor="white">
						<form method="get" action="#" onsubmit="return checkForm()">
						<tr>
							<td colspan="2" align="center">
								<font size="5">会员注册</font>
							</td>
							
						</tr>
						<tr>
							<td>
								用户名
							</td>
							<td>
								<input type="text" name="username" id="username"/><span id="usernamespan"></span>
							</td>
						</tr>
						<tr>
							<td>密码</td>
							<td>
								<input type="password" name="password" id="password"/><span id="passwordspan"></span>
							</td>
						</tr>
						<tr>
							<td>确认密码</td>
							<td>
								<input type="password" name="repassword" />
							</td>
						</tr>
						<tr>
							<td>email</td>
							<td>
								<input type="text" name="email" id="email" />
							</td>
						</tr>
						<tr>
							<td>姓名</td>
							<td>
								<input type="text" name="name" />
							</td>
						</tr>
						<!--1.编写HTML文件部分的内容-->
						<tr>
							<td>籍贯</td>
							<td>
								<!--2.确定事件,通过函数传参的方式拿到改变后的城市-->
								<select id="province">
									<option>--请选择--</option>
									<option value="0">湖北</option>
									<option value="1">湖南</option>
									<option value="2">河北</option>
									<option value="3">河南</option>
								</select>
								<select id="city">
									
								</select>
							</td>
						</tr>
						<tr>
							<td>性别</td>
							<td>
								<input type="radio" name="sex" value="男"/><input type="radio" name="sex" value="女"/></td>
						</tr>
						<tr>
							<td>出生日期</td>
							<td>
								<input type="text" name="birthday" />
							</td>
						</tr>
						<tr>
							<td>验证码</td>
							<td>
								<input type="text" name="yanzhengma" />
								<img src="img/yanzhengma.png" />
							</td>
						</tr>
						<tr>
							<td colspan="2">
								<input type="submit" value="注册" />											
							</td>
						</tr>
						</form>
					</table>
				</div>
			</div>
			<!--4.广告图片的div-->
			<div id="">
				<img src="img/footer.jpg" width="99%" />
			</div>
			<!--5.超链接与版权信息的div-->
			<div id="bottom">
				<a href="#">关于我们 </a>
				<a href="#">联系我们 </a>
				<a href="#">招贤纳士 </a>
				<a href="#">法律声明</a>
				<a href="#">友情链接</a>
				<a href="#">支付方式</a>
				<a href="#">配送方式 </a>
				<a href="#">服务声明 </a>
				<a href="#">广告声明 </a>
				<p>Copyright © 2005-2016 传智商城 版权所有 </p>
			</div>
		</div>
	</body>
</html>

页面效果展示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值