解决:问题是我想清除浏览器的缓存,也许是jquery-min地图404错误,我也解决了(感谢未定义的帮助)。
我有一个HTML代码,其中有一些div标签:
<div class="results">
<div id="r1" class="horizontal element">
<img src="logo1.jpg" class="photo">
<div id="1" class="data"></div>
</div>
</div>
我有这个jQuery代码,当我点击一个按钮时,我会向<div class="results"></div>
添加更多元素:
$("#show_more").click(function(){
$(".results").append('<div id="r2" class="horizontal element"><img src="logo2.jpg" class="photo"><div id="2" class="data"></div></div>');});
问题在于,如果我想提醒()class =“data”的id,只有id =“1”才会显示id =“2”,尽管该元素已创建(可见)。
我试图重新排列jquery代码的位置,但没有任何反应。我做错了什么?谢谢。
答案 0 :(得分:0)
假设您已使用$('.data').attr('id')
获取id
,attr
作为getter返回集合中第一个元素的值,您应该遍历集合并阅读{{ 1}}单独。
我使用了
id
这意味着您应该委派事件,在执行代码时,$('.data').click(function(){ alert($(this).attr('id')); });
选择在该特定时刻存在的$('.data')
元素,集合不包含生成的元素:
.data
另请注意,您不应使用重复的ID。你的代码应该处理它。