关于利用append往页面上添加新元素无法绑定事件的问题

今天写项目的时候遇到一个问题
就是利用ajax到后台取值,然后用append将控件加到页面上去,发现之前写的事件无法绑定到控件上
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
利用jquery绑定事件

$(".change").liveq("input propertychange",function(){
		tibi="";
		$("#txtTibi").val("");
		var $this = $(this);
		//获取改行第二个单元格对象
		var word = $this.parent().parent().children("td").eq(1);
		if(!isNaN($this.val().trim())){
			word.html("提量");
		}else if($this.val().charAt($this.val().length-1) == "%"){
			word.html("提比");
		}else if($this.val().trim() == "*"){
			word.html("取剩余")
		}
		
		//将提比提量值赋到文本框中
		//获取该行第一个文本框对象
		//$("#txtTibi").val("");
		$("#tibiTable tbody tr").each(function(i){
			tibi = tibi+"["+$(this).children("td").eq(0).html().trim().substr(0,3)+$(this).children("td").eq(2).children().val().trim()+"]";
		});
		$("#txtTibi").val(tibi);
	});
});

在ajax中进行用append添加新元素的代码

function addtibi(sel){
		var name = $(sel).val();
		if(name=='添加新规则')return;
		var tbody = $('#tibiTable tbody');
		var add = "["+name.substr(0,3)+"20%"+"]"
		$("#txtTibi").val($("#txtTibi").val()+add);
		tbody.append('<tr><td>'+name+'</td><td>提比</td><td><input value="20%"  class="change"/></td><td><button onclick="removeTibi(this)" class="btn btn-small btn-red">移除</button></td></tr>');
	}

在百度上找了好久,终于让我找到了解决方法,就是在绑定事件时把bind()函数改成live最终效果就出来啦,哇哈哈哈,开心

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值