基于jQuery的表单校验

前面我们已经学习了利用JavaScript进行表单校验,我们知道jQuery实际上就是对JavaScript封装,因此想到利用jQuery进行表单校验是不是比JavaScript简单许多。
表单的代码 如下:

<!DOCTYPE html>
<html>
	<head>
		<title>jQuery操作表格</title>
		<meta charset="UTF-8"/>
		<!--声明css代码域-->
		<style type="text/css">
			tr{
				height: 40px;
			}
		</style>
	 <script type="text/javascript" src="js/jquery-1.9.1.js" ></script>
	 <script type="text/javascript" src="js/gwc.js" ></script>
	</head>
	<body>
		<h3>jQuery操作表格</h3>
		<hr />
		<input type="button" id="fx" value="反选" />
		<input type="button" id="addRow" value="新增一行" />
		<input type="button" id="delRow" value="删除行" />
		<input type="button" id="copyRow" value="复制行" />
		<table border="1px" cellpadding="10px" cellspacing="0" id="ta">
			<tr>
				<td width="50px"><input type="checkbox" name="chks" id="chks" value="1" /></td>
				<td width="200px">书名</td>
				<td width="200px">作者</td>
				<td width="200px">数量</td>
				<td width="200px">操作</td>
			</tr>
			<tr id="">
				<td><input type="checkbox" name="chk" id="" value="2"/></td>
				<td>《Java编程之道》</td>
				<td>wollo</td>
				<td>10</td>
				<td>
					<input type="button" name="aa" id="" value="修改数量"  onclick="change(this)"/>
					<input type="button" name="" id="" value="删除"  onclick="del(this)"/>
				</td>
			</tr>
			<tr>
				<td><input type="checkbox" name="chk" id="" value="3" /></td>
				<td>《Python和我的故事》</td>
				<td>赵老师</td>
				<td>10</td>
				<td>
					<input type="button" name="" id="" value="修改数量" onclick="change(this)"/>
					<input type="button" name="" id="" value="删除"  onclick="del(this)"/>
				</td>
			</tr>
			<tr>
				<td><input type="checkbox" name="chk" id="" value="4" /></td>
				<td>《web开发详解》</td>
				<td>张老师</td>
				<td>30</td>
				<td>
					<input type="button" name="" id="" value="修改数量" onclick="change(this)"/>
					<input type="button" name="" id="" value="删除" onclick="del(this)"/>
				</td>
			</tr>			
		</table>
	</body>
</html>

js文件代码如下:

$(function(){
	
	/*实现全选和全不选的功能*/
	$("#chks").click(function(){
		
		var chk = $("input[name=chk]");
		var flag = $("#chks").prop("checked");
		chk.prop("checked",flag);
		
	})
	
	/*实现操作单个选框全部选择实现全选,只要有一个没选择不能实现全选*/
	$("input[name=chk]").click(function(){
		var flag = true;
		var chk = $("input[name=chk]");
		chk.each(function(){
			if(!$(this).prop("checked")){
			flag = false;
			return;
		}
		})
		$("#chks").prop("checked",flag);
	})
	
	/*实现反选的功能*/
	$("#fx").click(function(){
		
		var chk = $("input[name=chk]");
		var flag = true;
		chk.each(function(){
				$(this).prop("checked",!$(this).prop("checked"));
				if(!$(this).prop("checked")){
				flag = false;
				return;
		}
		})
		$("#chks").prop("checked",flag);
	})
	
	/*实现新增一行的操作*/
	$("#addRow").click(function(){
		
		$("#ta").append($('<tr id="">'+
				'<td><input type="checkbox" name="chk" id="" value="2"/></td>'+
				'<td>《Java编程之道》</td>'+
				'<td>wollo</td>'+
				'<td>10</td>'+
				'<td>'+
					'<input type="button" name="aa" id="" value="修改数量"  onclick="change(this)"/>&nbsp'+
					'<input type="button" name="" id="" value="删除" onclick="del(this)"/>'+
				'</td>'+
			'</tr>'))
		
	})
	
	/*实现删除行的操作*/
	$("#delRow").click(function(){
		
		var chk = $("input[name=chk]:checked");
		if(chk.length==0){
			alert("请至少选择一行");
		}else{
			/*执行删除操作*/
			chk.each(function(){
				$(this).parent().parent().remove();
			})
		}
		
	})
	
	/*实现复制行的操作*/
	$("#copyRow").click(function(){
		
		var chk = $("input[name=chk]:checked");
		if(chk.length==0){
			alert("请至少选择一行");
		}else{
			/*执行复制行的操作*/
			//复制
			var tr = chk.parent().parent().clone();
			//黏贴
			$("#ta").append(tr);
		}
		
	})
	
})

/*实现修改数量的功能*/
function change(th){
	var td = $(th).parent().parent().children().eq(3);
	$(td).html('<input type="text" size="3px" onblur="changeVal(this)" />');
}

function changeVal(th){
	var td = $(th).parent().parent().children().eq(3);
	td.html(th.value);
}

/*实现单个删除的功能*/
function del(th){
	$(th).parent().parent().remove();
}

由此可以看出使用jQuery的确比JavaScript简单。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值