【发布时间】:2016-06-02 20:12:50
【问题描述】:
我正在动态构建页面并在运行时构建锚点.. 这是HTML代码
htmlElement = '<div class="product_card col-lg-3 col-md-4 col-sm-6 col-xs-6" id="' + productValue['product_id'] + '">' +
'<a href="#" class="productDetails">' +
'<img src="' + productImage + '"' + ' width="258" height="202" alt="' + productValue['e_name'] + '" class="img-responsive"/>
</a>' +'</div>'
这些代码我都试过了
//display product info
$(document).delegate("click",'a.productDetails',function(){
alert('dddd');
});
//display product info
$('.product_card').on("click",'a',function(){
alert('dddd');
});
$('a.productDetails').live("click",function(){
alert('dddd');
});
没有任何效果!!
【问题讨论】:
-
jsfiddle.net/oLk8w5m4 这对我有用,当我使用 .on('click', function() {
-
您必须从现有的对象/元素进行委托,例如$('body').on('click', '.product_card a', function()...)
-
你的委托顺序不对,先是选择器,然后是事件。您的开启是正确的,但它需要附加到已经存在的东西上,例如文档或正文。 Live 已弃用,不应使用,您应该继续使用。
-
所有尝试都不适用于我的代码!!!少了点东西我拿不到!!
标签: jquery events dynamic click