Html Ajax发送到php,然后在div中回显

Html Ajax发送到php,然后在div中回显,html,ajax,Html,Ajax,我有一个ajax函数,它向php脚本发送一个变量num,然后在id为“status”的div中回显num的值 首先,用户生成一篇文章,我运行所有必要的查询,并在一个名为“posts”的div中显示用户的文章(使用while循环,这样每个文章都位于一个具有相同id的div中,但div位于一个和另一个之下)。我希望ajax功能能够在这些“posts”div中的每一个中工作(每个“posts”div都包含两个js按钮witch-onclick-manage ajax函数以及一个“status”div)

我有一个ajax函数,它向php脚本发送一个变量num,然后在id为“status”的div中回显num的值

首先,用户生成一篇文章,我运行所有必要的查询,并在一个名为“posts”的div中显示用户的文章(使用while循环,这样每个文章都位于一个具有相同id的div中,但div位于一个和另一个之下)。我希望ajax功能能够在这些“posts”div中的每一个中工作(每个“posts”div都包含两个js按钮witch-onclick-manage ajax函数以及一个“status”div)


但是,每次我单击其中一个按钮时,比如在显示的最底部可见的“posts”div中(单击的按钮调用ajax/js函数),该函数在最顶部的“posts”div中执行,其中第一个“status”div是,而它应该显示在我单击按钮的最底部div中。

编辑:抱歉,我假设您正在使用jQuery。我的错

您应该使用类而不是ID。如果使用ID,jquery将只对DOM中的第一个ID产生影响。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);
    })
});

发布jQuery。我猜您有多个ID为“status”的div。您能发布代码或链接到一个示例吗?请注意,您没有引用div的唯一方法,因此它只是获取第一个匹配元素。@Treffynnon,是的,有没有唯一识别它们的方法?如果您使用jQuery ajax函数,这将是ajax的返回。查看本页的第二个代码片段:如果我假设您使用的是jQuery,那么很抱歉。我当然会推荐它。如果我理解正确的话,这个示例将获取请求的HTML片段并将其插入页面。需要ajax函数在指定的“status”div中工作,而不是在它获取的第一个“status”div中工作,我也可以使用它吗?在这个jQuery示例中,$(这)表示实际单击的按钮,父项是.posts div。这是指实际单击按钮的div,而不是页面上的第一个div。下一步是find('.status'),我们仍然在.posts div中,该按钮是在其中单击的,因此当我们修改它时,我们只修改特定的.status元素。这就是@Treffynnon所说的“唯一引用div”的意思。您应该查看一些jqueryajax示例和jQuery选择器。您可以在大约8行jQuery中完成所有需要做的事情。