2011-12-13 91 views
0

我有一个ajax函数发送一个变量 - num - 到一个php脚本,然后在ID为“status”的div中回显num的值。Ajax发送到PHP,然后在div中回显

首先发生的事情是用户发表帖子,我运行所有必要的查询并将用户帖子显示在称为“posts”的div中(使用while循环,因此每个帖子都在具有相同id的div中,但是div的是在一个和其他)。我希望ajax功能能够在这些“帖子”div中的每一个中工作(每个“posts”div包含两个js按钮witch - onclick - 管理ajax功能以及“状态”div)

但是每次点击其中一个按钮,让我们说在显示最底部最显眼的“帖子”div(按钮点击调用ajax/js功能),该功能在顶部“帖子”div中执行,其中第一个“状态“div是,而它应该显示在我点击按钮的最底部div。

+1

安置自己的jQuery。我的猜测是你有一个以上的身份证“身份”的股利。 –

+1

你可以发布你的代码或链接到一个例子请 – FlabbyRabbit

+0

听起来像你没有一个独特的方式来引用DIV,所以它只是抓住第一个匹配元素。 – Treffynnon

回答

0

编辑:对不起,我假设你正在使用jQuery。我的错。

你应该使用类而不是ID。如果你使用一个ID,jquery只会影响DOM中的第一个。每个页面只能使用一次ID。

使用类,然后引用您想要编辑的div不仅通过类名称,通过对您正在与之交互的post div的某种引用。

$('.posts .button').click(function() { 
    //do ajax stuff... 
    $(this).parent('div').find('.status').html(data); 
} 

更新代码:

// .posts should be the class of the posts div 
// .button should be the class of the button on which you are activating your ajax 
$('.posts .button').click(function() { 
    $.post('your ajax post URL', function(data) { 
     $(this).parent('div').find('.status').html(data); 
    }) 
}); 
+0

什么是html数据? – fosho

+0

如果您使用的将是ajax的返回jQuery ajax函数。看看这个页面上的第二个代码片段:http://api.jquery.com/jQuery.post/对不起,如果我只是假设你正在使用jQuery。我会推荐它。它会使你做的事情变得很容易。 –

+0

如果我理解正确本示例获取所请求的HTML片段并将其插入到页面上。需要ajax函数在指定的“状态”div中工作,而不是它所抓取的第一个“status”div,我可以使用它吗? – fosho

相关问题