私は一連のコメントを作成しており、その下にコメントへの返信があります。このコードを使用して、コメントの下に新しい返信を追加します。
$(document).on('click', '.sub-reply1-send', function() {
var reply = $('textarea[name=comment-reply]').val();
$('.sub-reply1, .sub-reply1-textarea, .sub-reply1-send').slideUp(250).remove();
$('.answer').append("<div class='comment-sub-reply' style='display:none'>" + reply + "</div>");
$('.comment-sub-reply').slideDown(250);
subreply_visible = false;
});
これは、返信するコメントが 1 つしかない場合は問題なく機能しますが、コメントが 2 つある場合 (たとえば、Comment1 と Comment2)、Comment1 は Comment2 の下に生成されます。Comment1 への返信は正常に機能しますが、Comment2 への返信は、Comment1 の最後の返信ボックスの下に返信ボックスを生成します。
クリックしたコメントに追加する方法はありますか?
編集: 私が持っているものから生成された HTML マークアップ。
<div id="right-bar" class="flexcroll" style="display: block;">
<div class="question" style="display: block;">
<div class="question-content">What is the significance of this section?</div>
</div>
<div class="answer" style="display: block;">
<div class="question-answer" style="" id="thread1">This is not a test
<img class="reply" src="reply.png" />
</div>
<div class="question-answer" style="" id="thread0">Test
<img class="reply" src="reply.png" />
</div>
<div class="comment-sub-reply" style="">Another Test</div>
<div class="comment-sub-reply" style="">Still underneath Test</div>
<div class="comment-sub-reply" style="">This isn't a test either, but it's appearing under test</div>
<div class="sub-reply1" style="">
<textarea class="sub-reply1-textarea" name="comment-reply" style=""></textarea>
<div class="sub-reply1-send" style=""></div>
</div>
</div>
<div id="comment">
<form name="commentForm">
<textarea type="text" name="comment" id="answer-text-input" align="top" class="flexcroll" style="display: block;"></textarea>
</form>
<div id="button" style="display: block;"></div>
</div>
</div>
JQuery の他の側面は影響しません。この 1 つの関数だけがサブコメントを作成します。これまでのところ、一意のスレッド ID は何もしませんが、コメントを分離するためにそれを機能させようとしています。