在创建后动态绑定某个类的元素



我在document.ready()中动态创建了一个类为arindic的文本区域。

然后在它们的动态生成结束后,仍然在document.ready()例程中,我将这些元素与keypress事件绑定,如下所示:

$('.arindic').bind('keypress', function(evt){
   // do lots of stuff
});

但它不起作用。我知道这个"做很多事情"的函数工作得很好,因为在document.ready()的底部我有这个:

 $('.arindic').keypress(function(evt){ // do lots of stuff // });

,这对于已经静态地出现在页面上的文本区域很有效。我绑定动态元素的方式有问题吗?而不是.bind()我也尝试了.on().live(),但无济于事。

您最好使用.on()绑定到静态元素,然后冒泡到动态创建的元素。

$(document).on('keypress', '.arindic', function(event)
{
    // do lots of stuff
});

使用文档绑定并不是一件好事,我会将其更改为.arindic所包含的最高级别元素,这是静态的,并允许此事件从那里冒出来。

相关内容

  • 没有找到相关文章

最新更新