0

私がする必要があるのは、newmsgとusers idだけでなく、コメントトグルリンク、divider-postid div、ユーザーの写真と名前、削除ボタンなどを追加して、ユーザーの最新のステータス更新を追加することです。嫌いなボタン。だから私が持っているのはTwitterやFacebookのようなものです。->フォームデータをajaxに送信し、すべてをフィードに出力します。私のprofile.phpには、含める必要のあるすべてのものが含まれています。

では、これらのhtmlのブロックを呼び出して、Ajaxが成功した後に先頭に追加された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>";}   
4

1 に答える 1

2

私はここで推測します:

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>";
于 2012-07-22T12:46:59.920 に答える