jQuery事件不能处理动态加载的元素

时间:2014-03-10 14:33:57

标签: jquery

我正在通过身份jQuery AJAX的{​​{1}}加载一个元素 我知道id太长了,它包含jQuery的questionBeanPV.coAppQuestions150.answerText,但我无法更改id。

我希望在单击此元素时调用funnction。但是,以下代码无效。

'.'

我观察到这对任何动态加载的元素都不起作用。我错过了什么? 这是正确的方式还是其他方式?

3 个答案:

答案 0 :(得分:4)

您可以在此处使用 event delegation

$('body').on('click', '#questionBeanPV\\.coAppQuestions150\\.answerText', function() {
    alert('Hello !');
});

此技术可帮助您将任何事件附加到动态创建的元素。

答案 1 :(得分:1)

你应该使用delegate

$(document).on("click","#questionBeanPV\\.coAppQuestions150\\.answerText",function(){
   //some operation
});

它可以帮助您为未来元素附加处理程序

答案 2 :(得分:0)

使用事件委托:

$(document).on("click", "#questionBeanPV\\.coAppQuestions150\\.answerText", function() {