[英]Reload div content with jQuery
這是我的代碼:
<div style="overflow-x: hidden; overflow-y: visible; height:300px; width:300px;" id="textDiv">
<?php
$query = mysql_query("SELECT * FROM posts ORDER BY id");
while($queryVar = mysql_fetch_assoc($query))
{
echo $queryVar['id'].". ".$queryVar['text']."<br>";
}
?>
</div>
<div id="postComment">
<textarea id="text" onKeyPress="if(window.event.keyCode==13) postComment()" cols="30" rows="1" style="border: solid 1px #888;"></textarea>
</div>
<script type="text/javascript">
function postComment()
{
var textVar = document.getElementById('text').value;
$("#text").val("");
$.ajax
({
type: "GET",
url: "controllers/sendCommentController.php",
data: 'text=' + textVar,
success: function(msg)
{
$("#textDiv").hide().fadeIn('fast');
}
})
}
</script>
如您所見,當您在文本區域中按Enter鍵時,sendCommentController.php將執行(一個簡單的mysql插入查詢)。 我希望我的textDiv重新加載其內容。 .load()並沒有真正起作用,或者我只是搞砸了,它將另一個textDiv div加載到我現有的div中...請幫助:(另外,我該如何使div的滾動條始終位於底部?與.load一起使用。:(
function postComment()
{
var textarea = $("#text");
var textVar = $.trim(textarea.val());
textarea.val("");
$.ajax({
type: "POST",
url: "controllers/sendCommentController.php",
data: 'text=' + textVar,
success: function(msg)
{
$("#textDiv").hide().html(msg).fadeIn('fast');
}
})
}
可能將其更改為POST而不是GET。
您沒有在回調中添加新內容。
success: function(msg)
{
$("#textDiv").append(msg).hide().fadeIn('fast');
}
對於您的滾動問題,請參見此SO答案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.