2011-08-17 61 views
1

这里上创建一个事件是事情 假设我有以下结构的HTML:jQuery的:插入一个元素,这个元素

<div id="click"> add</div> 
<div id="id"> 
<div class="item">1</div> 
<div class="item">2</div> 
</div> 

,我创建了这个“项目”上点击某些事件类通过jquery。

$('.class').click(function(){ alert('1');}) 

的问题是,我想通过点击添加其他“项”,“点击”的div通过下面的JavaScript

$('#click').click(function(){ 
$('#id').prepend('<div class="item">new</div>'); 
}) 

,当然说我要这个“项目”是点击同样,但是没有处理程序。 当然我可以通过唤醒$('。class')来添加它,点击(....再一次,但事实并非如此,因为“item”1和“item”2 div会有2个事件。

任何人都可以提出好的建议?在此先感谢

回答

2

你也许可以解决使用.live()

$('.item').live('click', 
    function(){ 
     alert($(this).text()); 
}); 
1
$('.class').unbind('click'); 
$('.class').click(.....) 

这将解除绑定上.class元素

+0

1 downvote?任何评论为什么? – Curt

0

你没有一个所谓的 “类” 级这样的问题:

,所以我假定$(”类。)点击(函数(){。 (''');})实际上是$('。item')。click(function(){alert('1');})

鉴于这一点,我不太了解你的问题。你要做到以下几点

当单击带有类项的元素: 1)显示值

当点击id为点击的元素: 1)添加新的元素与具有类项目您已经定义的事件处理程序。

使用

$( '项目 ')生活(' 点击',函数(){警报($(本)的.text());});

$( '#点击')点击(函数(){$( '#ID')前面加上( '新');})。