解决jquery绑定点击事件失效问题

解决jquery绑定点击事件失效问题

因为自己在写学校的期末作业,遇到了原代码改变后,绑定的点击事件无效的问题,各种查文档,又百度了好久都没解决。

最后还是想起之前学期学Jquery的作业遇到过,翻出之前的作业,终于解决了!
所以发出来,希望能解决相关问题,也给自己留个笔记。

我搞反了这两个类名的的位置,所以没效果,麻了。

 下面直接搬代码吧!

1、导入jq文件。

2、HTML代码:

<div class="main">
			<form action="">
				<div class="demo1">
					<div>
						<input type="text" value="PHP" />
						<a href="#" class="up">[上移]</a>
						<a href="#" class="down">[下移]</a>
						<a href="#" class="del">[删除]</a>
					</div>
					<div>
						<input type="text" value="JavaScript" />
						<a href="#" class="up">[上移]</a>
						<a href="#" class="down">[下移]</a>
						<a href="#" class="del">[删除]</a>
					</div>
				</div>
			</form>
			<form action="">
				<div class="demo2">
					<a href="#" style="color: red;line-height: 50px;">✚ 添加项目</a>
					<div style="display: none;">
						添加到列表:
						<input type="text" value="" />
						<button type="button" id="add">添加</button>
						<button type="button" id="cancel">取消</button>
					</div>
					
				</div>
			</form>
		</div>

3、jq代码:

$(function(){
				//上移
				$('.demo1').on('click','.up',function(){
					var $par = $(this).parent();
					if($par.index()==0){
						alert('已经是第一个!')
					}else{
						$par.prev().before($par);
					}
				})
				//下移
				$('.demo1').on('click','.down',function(){
					var $par = $(this).parent();
					if($par.index() == $('.demo1').children().length-1){
						alert('已经是最后一个!')
					}else{
						$par.next().after($par);
					}
				})
				//删除
				$('.demo1').on('click','.del',function(){
					var val = confirm('你确定要删除?');
					if(val==true){
						$(this).parent().remove();
					}else{
						return false;
					}
				})
				//添加
				$('.demo2 #add').click(function(){
					var $content = $('.demo2 input').val();
					var $input = '<div><input type="text" value="PHP" /> <a href="#" class="up">[上移]</a> <a href="#" class="down">[下移]</a> <a href="#" class="del">[删除]</a></div>';
					$('.demo1').append($input);
					$('.demo1 input').last().attr('value',$content);
					$(this).prev().val("");
				})
				//取消
				$('.demo2 #cancel').click(function(){
					$(this).prev().prev().val("");
					$(this).parent().hide();
				})
				//隐藏
				$('.demo2 a').click(function(){
					$('.demo2 div').show();
				})
			})

代码应该复制了就能用,希望能帮助到你。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值