gpt4 book ai didi

javascript - 如何使 jquery remove() 只在一个项目上

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:46:30 25 4
gpt4 key购买 nike

这是我第一次使用 jquery,我正在尝试制作 jquery remove(),仅删除具有特定类的一个项目,而不是具有相同类的所有项目。

我的代码是这样的jquery:

$(function() {

$(".vote").click(function()
{
var id = $(this).attr("id");
var name = $(this).attr("name");
var dataString = 'id='+ id ;
var parent = $(this);
if (name == 'up') {
$(this).fadeIn(600).html('<span class="glyphicon glyphicon-ok"></span>');
$.ajax({
type: "POST",
url: "up_vote.php",
data: dataString,
cache: false,

success: function(html) {
parent.html(html);
$(".vote").remove();
$(".escondido").css("display", "block");

}
});
}

(代码继续,否则投反对票)

单击向上按钮后,jquery 代码会删除包含类(class)投票的按钮,但如果我有 2 个带有类(class)投票的按钮,则两者都将被删除。我只想删除单击的那个。知道怎么做吗?

<button type="button" class="btn btn-success btn-xs vote up" name="up" id="'.$reg['id'].'">BUTTON</button>

谢谢!

最佳答案

您需要在点击范围内添加对此的引用,以便在您的成功回调中使用,然后 jQuery 它就像您已经 jQueried 其他这样:

$(function() {

$(".vote").click(function()
{
var id = $(this).attr("id");
var name = $(this).attr("name");
var dataString = 'id='+ id ;
var parent = $(this);
var _this = this;
if(name=='up')
{
$(this).fadeIn(600).html('<span class="glyphicon glyphicon-ok"></span>');
$.ajax({
type: "POST",
url: "up_vote.php",
data: dataString,
cache: false,

success: function(html)
{
parent.html(html);
$( _this ).remove();
$( ".escondido" ).css( "display", "block" );
}
});
}
});

作为奖励,这里有一个重构版本,可以节省一些 cpu 周期并使代码更漂亮:

$(function() {

$(".vote").click(function()
{
var $this = $(this),
id = $this.attr("id"),
name = $this.attr("name"),
dataString = 'id='+ id;

if(name=='up')
{
$this.fadeIn(600).html('<span class="glyphicon glyphicon-ok"></span>');
$.ajax({
type: "POST",
url: "up_vote.php",
data: dataString,
cache: false,

success: function(html)
{
$this.html(html);
$this.remove();
$( ".escondido" ).css( "display", "block" );
}
});
}
});
});

关于javascript - 如何使 jquery remove() 只在一个项目上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26414079/

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