ajax调用后的Jquery是否正常,但未发送ID?
我正在使用JQuery并进行ajax调用,以根据ID删除数据库中的某些内容,如下所示:ajax调用后的Jquery是否正常,但未发送ID?,jquery,ajax,Jquery,Ajax,我正在使用JQuery并进行ajax调用,以根据ID删除数据库中的某些内容,如下所示: $(".delete").live('click', function(event) { var item = $(this), commentContainer = item.parent(), id = item.attr("id"), s
$(".delete").live('click', function(event) {
var item = $(this),
commentContainer = item.parent(),
id = item.attr("id"),
string = 'solutionID=' + id;
item.next('.loading2').fadeIn();
$.ajax({
type: "POST",
url: "/js/ajax/delete-comment.php",
data: string,
cache: false,
success: function(){
commentContainer.slideUp('slow', function() {
item.remove();
$('.loading2').fadeOut();
});
}
});
event.preventDefault();
});
页面本身有以下内容:-
<a href="#" id="55" class="delete">DELETE</a><div class="loading2"></div>
它第一次就可以工作,我使用“live()”来确保它在ajax调用之后也可以工作。
尽管如此,在ajax调用之后,它似乎可以工作,但是元素的ID没有发布,尽管有
有人知道这个问题吗?请
谢谢大家。我发现了问题:
它与Jquery或html无关,但在solution.solutionID的SQL查询中错过了调用。
很抱歉。您用来传递id的变量名为
string
,这不是javascript中的数据类型吗?尝试将其重命名为其他名称。它可能不相关,但闻起来有点奇怪。用于传递id的变量称为string
,这不是javascript中的数据类型吗?尝试将其重命名为其他名称。它可能是不相关的,但闻起来有点奇怪。若有任何错误,你们能在控制台中检查一下吗?完全没有错误。只是ID=我想我们需要更多的代码=/你确定你得到了ID吗?尝试使用console.log(id)打印它;ID在那里(上面的代码)。它只是没有发布,但在ajax调用之前就发布了。您能在控制台中检查是否有任何错误吗?完全没有错误。只是ID=我想我们需要更多的代码=/你确定你得到了ID吗?尝试使用console.log(id)打印它;ID在那里(上面的代码)。它只是没有发布,但在ajax调用之前就发布了。啊,一秒钟之内就被打败了。我认为这个tho还有其他问题(因为他收到了一半的字符串内容)。啊,一秒钟之内就被打败了。我认为这个tho还有其他问题(因为他收到了字符串的一半内容)。谢谢你,但ID仍然是空的更新答案,真的很奇怪。您正在使用Firebug或其他工具查看发送的数据?Woops,发布时出错了。再试一次。如果它不起作用,您应该用一个jsfiddle.net示例更新您的问题。您刚刚用0n()更改了Live()?您不应该再使用Live了。事件真的发生了吗?如果您编写(如我所说)alert(this.id)代码>在函数的开头,框中写了什么?谢谢你,但ID仍然是空的更新答案,真的很奇怪。您正在使用Firebug或其他工具查看发送的数据?Woops,发布时出错了。再试一次。如果它不起作用,您应该用一个jsfiddle.net示例更新您的问题。您刚刚用0n()更改了Live()?您不应该再使用Live了。事件真的发生了吗?如果您编写(如我所说)alert(this.id)
在函数的开头,框中显示了什么?
$(".delete").on('click', function(e) {
var item = $(this);
var commentContainer = item.parent();
str = 'solutionID=' + this.id;
item.next('.loading2').fadeIn();
$.ajax({
type: "POST",
url: "/js/ajax/delete-comment.php",
data: str,
cache: false,
success: function(){
commentContainer.slideUp('slow', function() {
item.remove();
$('.loading2').fadeOut();
});
}
});
e.preventDefault();
});