我已经使用ajax函数设置了一个提交框,当成功时,我有函数.append()
问题是,当我尝试提交某些内容时,它会连续追加。例如:如果我第一次提交评论,它会正确追加,如果我在之后提交另一条评论(没有刷新页面),它会追加两次,如果我之后提交另一条评论,它会追加三次,等等等等。我该如何防止这种情况发生?
var id = $(this).attr('id');
$('#comments_'+id).keydown(function(e){
if(e.keyCode == 13)
{
e.preventDefault();
var comment = $(id).val();
var comment = 'comment='+comment;
$.ajax({
type: "POST",
url: "edit.php",
data: comment,
cache: false,
success: function(data)
{
$('#commentSelect'+id).append(data);
}
});
return false;
}
});
我已经设置好了,所以我可以提交
感谢您的时间!
答案 0 :(得分:1)
在不知道更多细节的情况下,我猜你会在每次ajax请求后加载这个javascript。每次运行它都会重新绑定事件。您需要每次加载时只加载一次,或者更改
$('#comments_'+id).keydown(function(e){
到
$('#comments_'+id).unbind('keydown').keydown(function(e){