Jquery帖子响应没有正确附加

时间:2012-01-10 04:11:32

标签: jquery

我有一些jquery接受文本框的值,将其插入到mysql数据库中,然后附加一个容器,从而添加另一个注释。一切都有效,除了成功函数应该附加容器并清除值,这些都不会发生。

JQUERY:

  $('.commentBox').keypress(function(e) {

    if(e.which == 13) {
        e.preventDefault();

             if ($.trim($(this).val()) == ""){
                $('#nocomment').modal('show');
             }
             else {


   var form = $(this).closest('.commentForm'); 
   var commentbox = $(this).val();

   $.post('../comment.php' , form.serialize() , function(response){

            commentbox.val('');     
            form.closest('.commentContainer').append(response);


    });
    }
    }
});

当我alert(response)时,结果是完美的(它是一个div)。

HTML:

<div class='commentContainer'>
<form class='commentForm'>
<input type='hidden' name='record_id' value='$answerid[$f]' />
<input type='hidden' name='question_id' value='$q' />";
<input type='text' class='commentBox' placeholder='...comment' name='comment' autocomplete='off' />";

    

2 个答案:

答案 0 :(得分:0)

只是一个疯狂的猜测,但jQuery可能无法与form.closest('.commentContainer')匹配。

尝试在安装了Firebug的Firefox上运行它,以及一些console.log(...)以查看代码是否正常运行。

$.post('../comment.php' , form.serialize() , function(response){
    console.log('code gets here'); // simple test
    console.log(form.closest('.commentContainer')); // check if element is valid

    commentbox.val('');
    form.closest('.commentContainer').append(response);
});

答案 1 :(得分:0)

您是否尝试过form.closest('.commentContainer').append(response.responseText);