javascript - 1つの関数が実行された後にjquery関数を実行する

原文 javascript jquery html ajax

AJAXを使用してコメントを追加し、フォーマット済みのHTMLを取得して、DOM操作でHTMLに追加します

jQuery.ajax({
    url: baseURL + "index.php/user/news/add_comment",
    data: $("#comment_fm").serialize(),
    type: "POST",
    success: function(data) {

        var objData = jQuery.parseJSON(data);

        if (objData.cival == 1) //Success..
        {
            $("#comment").val('');
            $("#comment_box").replaceWith(objData.comment);
            $("#commentcounts").replaceWith(objData.commentcounts);
        }

    } // Success End
}); //AJAX End


上記のコードで、コメントが追加されたことがわかります。
同じリターン形式のHTMLに、JS関数が関連付けられた削除ボタンがあります。

以下はJSを削除します、

function deletecomment(commentid) {
    jQuery.ajax({
        url: baseURL + "index.php/user/news/deletecomment",
        data: {
            comment_id: commentid
        },
        type: "POST",
        success: function(data) {
            var objData = jQuery.parseJSON(data);

            if (objData.cival == 1) {
                $("#commentcounts").replaceWith(objData.commentcounts);
                $("#commentbox" + commentid).remove();
            }
        }
    });
}


以下は、関数deletecomment()を起動する私の削除ボタンです

<a href="javascript:deletecomment(<?php echo $comment['comment_id'];?>);"><i class="fa fa-trash text-info"></i></a>


しかし、私の問題は、関数を追加した直後にこのコメントを削除できないことです。
ページを更新すると、削除機能が必要になり、

だから問題は、ページをリロードせずに複数の機能を機能させる方法ですか?

前もって感謝します、
答え
以下を試してみることをお勧めします:

<a class="deleteComment" data-id="<?php echo $comment['comment_id'];?>" href="#"><i class="fa fa-trash text-info"></i></a>


あなたのJSは:

$(document).on('click','.deleteComment',function(){
    jQuery.ajax({
          url: baseURL + "index.php/user/news/deletecomment",
          data: {
                 comment_id: $(this).data('id');
          },
          type: "POST",
          success: function(data) {
                var objData = jQuery.parseJSON(data);
                if (objData.cival == 1) {
                     $("#commentcounts").replaceWith(objData.commentcounts);
                     $("#commentbox" + commentid).remove();
                }
          }
    });
});
関連記事

javascript - AngularJS:モデル値の切り替えはUIに影響しません

javascript - アニメーションの完了後にjquery関数を実行するにはどうすればよいですか?

javascript - 毎回コマンドを実行せずにCSSの変更を確認する方法

javascript - Jqueryで読み込まれたページのURLを変更する

javascript - ng-repeat内のng-modelの設定が機能しない

javascript - 1つのソースのみからイベントを抽出する方法

javascript - ng-repeat内で呼び出されたAngular $ broadcastが複数回起動する

javascript - session.lastAccessedTimeをJavaScript日付オブジェクトに変換します

javascript - javascript 4ボタン、2動作

javascript - ExpressおよびCheerio / JSDOM