gpt4 book ai didi

jQuery 删除()不工作

转载 作者:行者123 更新时间:2023-12-01 01:00:30 26 4
gpt4 key购买 nike

我有一个基本表,每行都有一个按钮,允许用户删除按钮所在的行。我有一个具有以下成功事件的 ajax 调用:

$(document).on('click', '.glyphicon-remove', function () {
$.ajax({
type: "POST",
url: myAjax.ajaxurl,
data:
{
id : $(this).attr('id'),
action : "removeEntry"
},

success:function(data)
{
alert("Here!");
$(this).closest("tr").remove();
}

});
});

“Here”已正确返回,但remove() 语句似乎不起作用。我尝试过执行 $(this).remove() ,但这也不起作用......有什么想法吗?表结构如下:

    <table class="table table-bordered" id = "myTable">
<tr>
<th>Event Name</th>
<th>Subdomain</th>
<th>Shortcode</th>
<th>Delete</th>
</tr>

<tr>
<td>This is a sample entry</td>
<td>some data</td>
<td>some more data</td>
<td><a href='#'>
<span class='glyphicon glyphicon-remove' id = 'generated_01'></span>
</a></td>

</tr>
</table>

最佳答案

this 并不是您想象的那样,它位于 success 回调中

绑定(bind)新上下文的方法有多种。最常见的方法可能是存储对 ajax 外部元素的引用。

$(document).on('click', '.glyphicon-remove', function () {
var $element = $(this);
$.ajax({
type: "POST",
url: myAjax.ajaxurl,
data:
{
id : $(this).attr('id'),
action : "removeEntry"
},

success:function(data)
{
alert("Here!");
$element.closest("tr").remove();
}

});
});

您还可以使用 javascript bind() 并且还有 $.ajaxcontext 选项

关于jQuery 删除()不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34970211/

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