jquery的append()离奇问题 为后加的html元素绑定事件需要用on$("").on("click",function(){alert("ok");}); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $(".room").on("click",function () { alert('OK'); //alert($(this).html()); }); 又GOOGLE了一遍,似乎是由於新增元素绑定事件的问题,改成用LIVE绑事件,但是依然无效$(".room").die().live("click", function () { alert('OK'); //alert($(this).html());}); 绑定事件的次序有点小问题,先append然后绑定事件success: function (data) { //$('#div_room_container').empty(); var myarray = $.parseJSON(data); $.each(myarray, function (i, item) { $('#div_room_container').append( "<div class='room' id='" + item.roomid + "'>" + item.room_cname + "</div>" ); $(".room").click(function () {//事件绑定放到这里,原因是没有新append的没有绑定事件 alert('OK'); //alert($(this).html()); }); }) 按照datiexiong的改法OK了。但是有個疑問為甚麼這個綁定事件一定要卸載AJAX的囘調函數裏面?我寫在AJAX FUNCTION外面卻不行? 对于动态生成的元素,要用live来绑定事件,或者delegate$(".room").live('click',function () { alert('OK'); //alert($(this).html()); }); 因为ajax是异步执行的,js不会等到你ajax语句执行完成再执行下一步语句 对的,这楼说的很对,动态生成元素不能直接绑定click ,要用live 或者 delegate live是在哪个版本之后就被移除了。。要用on.. 给新添加的div添加一个新的class,然后给这个class绑定事件 用了ajax还不知道什么事异步。。 document.body.insertBefore难题 多个JavaScript的验证问题 表格的前景色怎么加啊 javascript如何解压服务器端压缩的字符串? js按键模拟 js$$xml js文件已经更新了,为什么总是显示老的内容,如何解决 求frame的src语句如何写? web下怎么用程序控制打印时的纸张类型?? 帮忙解决下这个错误。14.Caused by: java.lang.NoClassDefFoundError: Could not initialize cla JQuery API 官网上面什么地方下载? js引用相对路径
alert('OK');
//alert($(this).html());
});
alert('OK');
//alert($(this).html());
});
success: function (data) {
//$('#div_room_container').empty();
var myarray = $.parseJSON(data);
$.each(myarray, function (i, item) {
$('#div_room_container').append(
"<div class='room' id='" + item.roomid + "'>" + item.room_cname + "</div>"
);
$(".room").click(function () {//事件绑定放到这里,原因是没有新append的没有绑定事件
alert('OK');
//alert($(this).html());
}); })
alert('OK');
//alert($(this).html());
});