jQuery AJAX - 目标加载内容

时间:2011-07-28 19:50:16

标签: ajax target jquery

如何使用jQuery定位动态加载的内容?我已经阅读了很多,发现.live()函数是一种向加载的内容添加事件的简单方法,但我不确定如何在加载的内容中定位对象。我在主页上有一个容器:

<div id="container">place to load content</div>

和加载页面上的容器:

<div id="ajax-container">
    <div id="stuff">
        <div class="random-class">stuff to be loaded</div>
        <div class="random-links"><a href="#" class="delete">delete me</a></div>
    </div>
</div>

我有一个“删除”类的链接,我想用它来删除#stuff。我发现jQuery会忽略更新的内容,因此我无法将事件附加到该锚点。我发现了.live()函数并修复了我的点击问题。

$('.delete').live('click', function() {
    alert('click event works');
    $(this).parent('#stuff').hide();
});

警报会触发,但我如何定位div#stuff呢?

3 个答案:

答案 0 :(得分:2)

$('.delete').live('click', function() {
    alert('click event works');
    $(this).closest('div#stuff').hide();
});

这里是小提琴http://jsfiddle.net/5tCZH/

答案 1 :(得分:1)

不确定我理解,但$('#stuff')将为您提供该Div的jQuery对象,无论您在何处调用它。 (失去this.parent)

答案 2 :(得分:0)

根据您的代码: 使用.parent()仅在DOM树中向上移动一级。而是尝试使用.parents()方法向上移动多个级别。