如何选择动态创建的ajax元素

时间:2014-05-23 19:59:01

标签: javascript jquery ajax javascript-events

快速提问。我有这样的HTML代码:

<li class='entry'>
    <div class='entryContent'>
        <p class='entryText'>Entry text></p>
        <a href="#" class='entryReply'>Reply</a>
    </div>
</li>

当我点击回复时,带有回复表格的div将附加到“条目”。 所以它看起来像:

<li class='entry'>
    <div class='entryContent'>
        <p class='entryText'>Entry text></p>
        <a href="#" class='entryReply'>Reply</a>
    </div>
    <div class='replyForm'>
        //form stuff
    </div>
</li>

现在我要做的是创建用户脚本,它会找到动态的div.replyForm并将一些内容添加到其中:

<li class='entry'>
    <div class='entryContent'>
        <p class='entryText'>Entry text></p>
        <a href="#" class='entryReply'>Reply</a>
    </div>
    <div class='replyForm'>
        //form stuff

        //MyAppendedStuff
    </div>
</li>

我已经尝试了

$("body").on("focus", ".replyForm", function(){ 
    $(this).append('<span>Hello World!</span>'); 
}); 

但它不起作用。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您正在为focus创建div.replyForm侦听器。您可能希望将侦听器绑定到表单输入。像这样:

$('body').on("focus", "div.replyForm input", function () {
    $('div.replyForm').append('<span>Hello World!</span>');
});

Working Example (jsfiddle)