Jquery:无法选择追加元素

时间:2012-08-19 10:44:14

标签: jquery html jquery-ui appendto

当我点击ul li中的链接时我试图显示警告但不知何故它无法正常工作。我的jquery无法选择我追加它的链接。

我的HTML

<ul id="typeList"></ul>

MY JQUERY

 $("a.type").on("click", function(){                
            alert("click");
 });

$("<li><a href='#' class='type' type =" +results.rows.item(i).Type + " >"+ results.rows.item(i).Type +"</a></li>").appendTo('ul#typeList');

创建期望的线

<ul>
   <li><a class="type" href='#' type ='People'>People</a></li>
   <li><a class="type" href='#' type ='Places'>Places</a></li>
</ul>

3 个答案:

答案 0 :(得分:2)

修改on触发器以捕获ul中的点击事件:

 $("#typeList").on("click", "a.type", function(){                
            alert("click");
 });

这会将事件处理程序仅附加到一个元素(您的ul#typeList),但它仅适用于a.type内的ul个元素。

答案 1 :(得分:0)

您无法将事件处理程序附加到尚不存在的元素!

将事件委托给存在的元素,如@des给出的答案,或者在附加处理程序之前附加元素:

$("<li><a href='#' class='type' type =" +results.rows.item(i).Type + " >"+ results.rows.item(i).Type +"</a></li>").appendTo('ul#typeList');

$("a.type").on("click", function(){                
    alert("click");
});
​

FIDDLE

答案 2 :(得分:-1)

尝试使用此按钮进行点击

$(function(){
   $(".type").click(function(){                
                alert("click");
     });
});