通过此代码,我会在帖子中添加评论。但是有一个问题 - 第一个评论工作,但我无法添加下一个。我使用livequery,所以它是工作。你能救我吗?
$('form.comment_form').livequery('submit', function a()
{
var element = $(this);
var wall_post_id = element.attr("id");
var wall_message = $('#comment_text'+wall_post_id).attr('value');
$.post("home/add_comment", $(this).serialize(), function(response)
{
if(response.error == "0")
{
$("div#comments"+wall_post_id).replaceWith(response.message);
}
else if(response.error == "1")
{
alert(response.message);
return false;
}
}, "json");
return false;
});
答案 0 :(得分:1)
问题是当你使用replaceWith时它会完全删除那个DOM元素。所以第二次运行第二次评论时,没有任何DIV可以匹配,所以没有什么可以替换的。请尝试附加。请参阅以下代码:
$('form.comment_form').livequery('submit', function a()
{
var element = $(this);
var wall_post_id = element.attr("id");
var wall_message = $('#comment_text'+wall_post_id).attr('value');
$.post("home/add_comment", $(this).serialize(), function(response)
{
if(response.error == "0")
{
$("div#comments"+wall_post_id).append(response.message);
}
else if(response.error == "1")
{
alert(response.message);
return false;
}
}, "json");
return false;
});