0

这是我的jQuery代码:

$(function(){
$.post("/person/keywords/get/", function(data){
    for(i=0; i<data.length; i++)
    {
        count = count + 1;
        $(".keywords-set").append('<div class="keyword-item"><span class="keyword" id="keyword-'+count+'">'+data[i]+'</span><textarea class="comment" id="comment-'+count+'"></textarea></div>');
    }
});

$(".keyword-sets").on('click', "[id^=keyword]", function(event) {
    event.preventDefault();
    alert("yes");
});
})

在页面加载时,我从服务器获取一些数据,然后将其附加到 html。click 事件不适用于附加的 html 项目。对于我通过 .post() 请求从服务器获得的所有项目,我都遇到了这个问题。

这是我完整的 HTML 和 jQuery 代码:

https://gist.github.com/3023937

还有一件事,我认为问题发生在在 html 中使用 jQuery 代码(而不是作为外部文件)。我在另一个项目中有这种类似类型的代码,我在外部文件中有 jquery 代码,它可以正常工作。为什么会这样?

PS如果您需要更多详细信息,我可以给您。

谢谢!

4

1 回答 1

6

这段代码:

$(".keyword-sets")

说“集合”复数,但我在其他任何地方都看不到那个符号。也许你的意思是:

$(".keyword-set").on("click", ...

编辑——哎呀“.keywords-set”...

于 2012-06-30T14:32:19.053 回答