动态生成的li标签,如何添加onclick事件

幻影小子 2012-08-13 04:21:38
我用for循环,列出所有的li标签,请问如何给每行的li标签添加一个onclick事件,以便我获取li的值,请教高手了 。。
...全文
5747 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Junior_s 2014-11-12
  • 打赏
  • 举报
回复
问题解决了,开头加了句:document.getElementById("datasorce").value=arg.innerHTML;
Junior_s 2014-11-12
  • 打赏
  • 举报
回复
引用 11 楼 showbo 的回复:
[Quote=引用 9 楼 的回复:] 我一开始是按照7楼写的 我想模仿百度搜索下拉框,点击下拉框的某行,那一行的内容就显示在搜索框,可是按照7楼写的 永远都是获取的是最后一行的值 啊 [/Quote] 你没做好闭包。。
for(var i=0;i<lis.length; i++){
  if(lis[i].tagName=="LI"){
  lis[i].onclick=(function(i){
    return function(){alert(i);}/////
  })(i);
}
按您的写还是有问题……
Junior_s 2014-11-12
  • 打赏
  • 举报
回复
我也在写这个,我的代码写的也一样,但是问题是我第一次点击之后,不走那个onclick事件,能不能帮忙看看。
function sometest(){
		var lis=document.getElementsByTagName("li");
		 for(var i=0;i<lis.length;i++){
	        lis[i].onclick=function(){
	           document.getElementById("datasorce").value=this.innerHTML;
	        };
		 }
	};
幻影小子 2012-08-14
  • 打赏
  • 举报
回复
我一开始是按照7楼写的 我想模仿百度搜索下拉框,点击下拉框的某行,那一行的内容就显示在搜索框,可是按照7楼写的 永远都是获取的是最后一行的值 啊
Go 旅城通票 2012-08-14
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

我一开始是按照7楼写的 我想模仿百度搜索下拉框,点击下拉框的某行,那一行的内容就显示在搜索框,可是按照7楼写的 永远都是获取的是最后一行的值 啊
[/Quote]

你没做好闭包。。
for(var i=0;i<lis.length; i++){
if(lis[i].tagName=="LI"){
lis[i].onclick=(function(i){
return function(){alert(i);}/////
})(i);
}
静缘 2012-08-14
  • 打赏
  • 举报
回复
把你的代码贴出来看看
中骑士 2012-08-13
  • 打赏
  • 举报
回复
来晚了,楼上抢先了!!!
楼上用的方式是“匿名函数”!
静缘 2012-08-13
  • 打赏
  • 举报
回复
var lis = document.getElementById("z_type").getElementsByTagName("li");//查找ID为Z_TYPE元素下的所有LI标签
for(var i=0;i<lis.length; i++){
if(lis[i].tagName=="LI"){
lis[i].onclick=function(){//增加单击事件
//这里写你的代码
alert(this.innerHTML);
};
}
}

幻影小子 2012-08-13
  • 打赏
  • 举报
回复
我刚才去看了下 但是jQuery这个我还没学到过呀 难道没其他办法了吗?
PerterPon 2012-08-13
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

jQuery 这个我还没学到哦 ,除了jQuery,有其他办法吗?高手们说具体点啊
[/Quote]
live的本质就是事件冒泡,LZ去百度看看吧
幻影小子 2012-08-13
  • 打赏
  • 举报
回复
jQuery 这个我还没学到哦 ,除了jQuery,有其他办法吗?高手们说具体点啊
PerterPon 2012-08-13
  • 打赏
  • 举报
回复
jQuery的live事件
幻影小子 2012-08-13
  • 打赏
  • 举报
回复
不好意思啊 我看的不是很明白,能说具体点吗?
001007009 2012-08-13
  • 打赏
  • 举报
回复
动态生成的dom,可以行内添加onclick,
也可以 事件委托

参考
http://topic.csdn.net/u/20120531/19/b8824cdc-ab08-4e05-a07c-1a299a2cf500.html

87,910

社区成员

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

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