jQuery $('。someClass')。click(function(){})仅适用于当前存在的元素?

时间:2011-07-13 07:44:32

标签: javascript jquery

所以我不断向图表添加新点,我希望所有这些点都具有相同的点击功能。但似乎我跑的时候

$('.someClass').click(function(){})

它仅适用于当前具有someClass的元素。如果我添加一个新的someClass元素,它就没有点击监听器。

我如何解决这个问题?每次添加元素时都必须运行click函数吗?

5 个答案:

答案 0 :(得分:6)

$('.someClass').live('click', function(){});

甚至更好地考虑delegate方法。

答案 1 :(得分:1)

使用jQuery live方法。

答案 2 :(得分:0)

下面:

$('.someClass').live('click',function(){
  // Handle here
})

答案 3 :(得分:0)

问题可能是您没有使用jQuery代码注册新对象。 添加点后,您可以尝试运行上面的javascript代码。

如果是jsf,例如:

<h:commandButton value="Add Point>
  <f:ajax onevent="registerSomeClassObject"/>
</h:commandButton>

答案 4 :(得分:-1)

您也可以使用jquery bind方法。