gpt4 book ai didi

php - AJAX 调用成功后更新元素

转载 作者:行者123 更新时间:2023-11-28 11:10:14 24 4
gpt4 key购买 nike

问题

成功的 AJAX 调用后,我想更新页面上的元素。但是,它没有被更新。

代码 [Javascript]

$(function()
{
$(".upvote").click(function()
{
var id = $(this).parent().find("input").val();
$.ajax(
{
type: "GET",
url: "process.php",
data: "id=" + id +"&f=u",

success: function(results)
{
$(this).parent().parent().find("span.ups").empty().append("Upvotes: " + results);
console.log(results);
}
});
return false;
});
});

代码 [HTML]

此代码由 PHP 生成。

<div class="post">
<h2>$title</h2>
<p>$body</p>
<span class="ups">Upvotes: $upvotes</span>
<span class="downs">Downvotes: $downvotes</span>
<span class="total">Total votes: $t_votes</span>
<div id="links">
<input type="hidden" id="id" name="id" value="$id">
<a href="process.php?id=$id&f=u" class="upvote"><button>Upvote!</button></a>
<a href="process.php?id=$id&f=d" class="downvote"><button>Downvote!</button></a>
</div>
</div>

由 PHP 返回

更新后的点赞数。

最佳答案

不是你想象的那样。它的值取决于它出现的函数的调用方式(并且在不同的函数内部时会发生变化)。

我不知道 jQuery 成功回调中的内容是什么,但它不会是 HTML 元素。

如果您希望它成为被点击的元素,那么您需要在 this 是该元素时存储它。

$(".upvote").click(function() {
var clicked_element = this;

然后您可以稍后使用该变量:

$(clicked_element).parent().etc

关于php - AJAX 调用成功后更新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14197615/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com