Django プロジェクトで django-threadedcomments ライブラリを使用します。
https://github.com/HonzaKral/django-threadedcomments
このチュートリアルでは、スレッド コメント スタイルでコメントに返信するための Javascript を含むサンプル コードを示します。
このサンプルをテストしようとしましたが、ライブラリ自体は機能しますが、コメントに返信する Javascript は機能しません。
また、jQuery の読み込みや Django の静的ファイルの読み込みに問題はありません。
これがチュートリアルです。http://goo.gl/vyFw9
私は疑問に思っています:
1)スクリプトに何か問題がありますか?
2)そうでない場合、なぜこれが機能しないのかについてのアイデアはありますか?
function show_reply_form(comment_id, url, person_name) {
var comment_reply = $('#' + comment_id);
var to_add = $( new Array(
'<div class="response"><p>Reply to ' + person_name + ':</p>',
'<form method="POST" action="' + url + '">',
'<ul>', '{{ form.as_ul|oneline }}',
'<li><input type="submit" value="Submit Comment" /></li>',
'</ul>', '</form>', '</div>').join(''));
to_add.css("display", "none");
comment_reply.after(to_add);
to_add.slideDown(function() {
comment_reply.replaceWith(new Array('<a id="',
comment_id,'" href="javascript:hide_reply_form(\'',
comment_id, '\',\'', url, '\',\'', person_name,
'\')">Stop Replying</a>').join(''));
});
}
function hide_reply_form(comment_id, url, person_name) {
var comment_reply = $('#' + comment_id);
comment_reply.next().slideUp(function (){
comment_reply.next('.response').remove();
comment_reply.replaceWith(new Array('<a id="',
comment_id,'" href="javascript:show_reply_form(\'',
comment_id, '\',\'', url, '\',\'', person_name,
'\')">Reply</a>').join(''));
});
}
<a id="c{{ comment.id }}" href="javascript:show_reply_form('c{{ comment.id }}','{% get_free_comment_url post comment %}','{{ comment.name }}')">Reply</a>