2016-01-25 113 views
2

我無法追加頁面似乎只是刷新在那裏,因爲我想查看它無需刷新頁面無法附加jQuery的

的index.php

<div class="view_comment"> 
     <b>username :</b> <?php echo $comment_comment;?> 
</div> 
<div id="comment_type_area" class="comment_type_area"> 
     <form method="POST"> 
      <input type="text" class="comment" post_id="<?php echo $shared_id2; ?>" id="text_comment" placeholder="Write a Comment"></input> 
      <input type="submit" id="post_button" ></input> 
     </form> 
     </div> 

的jquery.js

$(document).ready(function(){ 

     $('.comment').keydown(function (e){ 
      if(e.keyCode == 13){ 
       var post_id = $(this).attr('post_id'); 
       var comment = $(this).val(); 
       $.post('/comment.php',{ post_id: post_id, comment:comment}); 
       $('.comment').val(''); 
/*i am guessing the problem starts from here and onwards*/ 
       $(this).parent().children('.comments').append("<div class='view_comment'><b>Username :</b>" + comment +"</div>"); 
      } 
     }); 

    }); 
+1

你確信沒有JavaScript錯誤投擲到瀏覽器的控制檯? –

+0

表單提交... – epascarello

+0

以及表單確實提交,因爲我可以在我的數據庫中看到它,我也能夠從我的數據庫 – jake123

回答

0

錯誤是在jQuery的崗位我被追加它..children('comments').append這是錯了,它應該是這樣的

$(document).ready(function(){ 

    $('.comment').keydown(function (e){ 
     if(e.keyCode == 13){ 
      e.preventDefault(); 
      var post_id = $(this).attr('post_id'); 
      var comment = $(this).val(); 
      $.post('/comment.php',{ post_id: post_id, comment:comment}); 
      $('.comment').val(''); 
      $(this).parent().append("<div class='view_comment'><b>Username :</b>" + comment +"</div>"); 
     } 
    }); 

}); 
6

您應該添加e.preventDefault()以防止提交,因爲當您點擊輸入button形式的領域,將自動提交表單:

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

    var post_id = $(this).attr('post_id'); 
    var comment = $(this).val(); 
    ... 
} 

注:輸入是自我封閉的標籤之一,所以它應該是<input type="submit" id="post_button" />

希望這會有所幫助。

+0

'e.preventDefault(); '幫助我停止重新加載頁面,但我無法追加 – jake123

+0

請嘗試將完整的HTML添加到OP,因爲我找不到任何帶有類「comments」的元素。 –

+0

沒有元素作爲類'評論' – jake123