我无法附加页面似乎刷新了我想要查看的位置而不刷新页面
的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>");
}
});
});
答案 0 :(得分: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" />
。
希望这有帮助。
答案 1 :(得分: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>");
}
});
});