jquery中li元素的click事件为何不起作用

zhongjh_ORZ 2012-03-07 12:51:53
html代码:
<div class="searchContainer">
<input type="text" name="txtSearch" class="search_text"/>
<a href="#"><img src="Images/Small_pic/08.gif" style="border:1px solid #ccc" /></a>
<div class="completionList">
<ul> <!--用于显示搜索关键字列表-->
</ul>
</div>
</div>

jquery代码:
$(function () {
$("input:text").keyup(function () {
$("div.completionList ul").append("<li>animal</li>")
});
$("div.completionList ul li").click(function () {
alert("ok");
});
})

但是当写成:
$(function () {
$("div.completionList ul").append("<li>animal</li>");

$(".completionList ul li").click(function () {
alert("ok");
});
})
这样的代码就没问题, 前一个代码就有问题, 显示不出ok

本来是想实现一个类似autoComplete下拉菜单关键字搜索功能,当取得数据的时候便添加一个li元素到ul当中,但是li元素的click 事件不起作用, 点击它的时候总出不来alert 提示,不知道是哪里出了问题?
...全文
956 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
libo_sina 2012-03-07
  • 打赏
  • 举报
回复
动态添加的元素不能想你那样绑定事件(原因我也搞不懂)!你要对添加的元素绑定事件可以这样:
$("div.completionList ul").append("<li onclick='a()'>animal</li>");
试一下吧
Acesidonu 2012-03-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zsx841021 的回复:]

http://blog.csdn.net/xinhaozheng/article/details/5862109

$("div.completionList ul li").live('click',function () {
alert("ok");
});
[/Quote]
++
三石-gary 2012-03-07
  • 打赏
  • 举报
回复
http://blog.csdn.net/xinhaozheng/article/details/5862109

$("div.completionList ul li").live('click',function () {
alert("ok");
});

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧