我需要做的是,不仅用newmsg和用户id为用户的最新状态更新做准备,而且我还需要添加我的评论切换链接、我的分隔符postiddiv、我的用户图片和名称、我的删除按钮以及我的喜欢和不喜欢按钮。所以我想要的是类似Twitter和facebook的功能。->将表单数据发送到ajax中,并将所有内容打印到提要中。我的profile.php包含了我使用的所有需要包含的内容。
那么,在Ajax成功之后,有没有一种方法可以调用这些html块并将它们显示在预先准备好的div中呢?这真的很难解释,因为我不知道我在做什么,但希望你能明白。我只是不了解这一切。
PROFILE.PHP
$(document).ready(function(){
$("form#myform").submit(function(event) {
event.preventDefault();
var content = $("#toid").val();
var newmsg = $("#newmsg").val();
$.ajax({
type: "POST",
cache: false,
url: "insert.php",
data: "toid=" + content + "&newmsg=" + newmsg,
success: function(){
$("#myThing").prepend("<div class='userinfo'>"+newmsg+" </div>");
}
});
});
});
</script>
<div class="userinfo"><div id="divider">
<div class="form">
<form id="myform" method="POST" class="form_statusinput">
<input type="hidden" name="toid" id="toid" value="<?php echo $user1_id; ?>">
<input class="input" name="newmsg" id="newmsg" placeholder="Say something" autocomplete="off">
<div id="button_block">
<input type="submit" id="button" value="Feed">
</div>
</form>
</div></div></div></body>
<p id="myThing"></p>
COMMENT LINK
echo "<div class='stream_option'><a style='cursor:pointer;' id='commenttoggle_".$streamitem_data['streamitem_id']."' onclick='"toggle_comments('comment_holder_".$streamitem_data['streamitem_id']."');clearTimeout(streamloop);swapcommentlabel(this.id);'"> Write a comment...</a></div>";
}else{
echo "<div class='stream_option'><a style='cursor:pointer;' id='commenttoggle_".$streamitem_data['streamitem_id']."' onclick='"toggle_comments('comment_holder_".$streamitem_data['streamitem_id']."');clearTimeout(streamloop);swapcommentlabel(this.id);'"> Show Comments (".$num2.")</a></div>";
类似链接
cho "<div class='stream_option'><a id='likecontext_".$streamitem_data['streamitem_id']."' style='cursor:pointer;' onClick='"likestatus(".$streamitem_data['streamitem_id'].",this.id);'">";
不喜欢链接
echo "<div class='stream_option'><a id='dislikecontext_".$streamitem_data['streamitem_id']."' style='cursor:pointer;' onClick='"dislikestatus(".$streamitem_data['streamitem_id'].",this.id);'">";
删除链接
<? if($streamitem_data['streamitem_creator']==$_SESSION['id']){
echo "<div style='cursor:pointer;position:relative;top:-70px;float:right;padding-right:5px;' onclick='"delete_('".$streamitem_data['streamitem_id']."');'">X</div>";}
我猜这里是:
success: function(){
$("#myThing").prepend("<div class='userinfo'>"+newmsg+" </div>");
}
插入HTML的位置在哪里?如果是这种情况,并且insert.php返回HTML,请尝试以下操作:
success: function(r){
$("#myThing").prepend("<div class='userinfo'>"+newmsg+r.responseText+" </div>");
}
获取ID:
我想插入是用mysql完成的,所以在插入新消息后,你应该这样做:
$new_id = mysql_insert_id();
然后输出HTML:
echo "<div class='stream_option'><a id='likecontext_".$new_id."' style='cursor:pointer;' onClick='"likestatus(".$new_id.",this.id);'">";
echo "<div class='stream_option'><a id='dislikecontext_".$new_id."' style='cursor:pointer;' onClick='"dislikestatus(".$new_id.",this.id);'">";
if ($new_id == $_SESSION['id'])
echo "<div style='cursor:pointer;position:relative;top:-70px;float:right;padding-right:5px;' onclick='"delete_('".$new_id."');'">X</div>";