Rumah hujung hadapan web tutorial js django ajax提交评论并自动刷新功能的实现代码

django ajax提交评论并自动刷新功能的实现代码

May 22, 2018 pm 01:54 PM
ajax django automatik

这篇文章主要介绍了django ajax提交评论并自动刷新功能的实现代码,需要的朋友可以参考下

在试了很多次了,终于搞定了,上代码吧。(我用的是jQuery的ajax,不是原生的)

js代码:

<script>
 $(document).ready(function () {
  getcomment();
  $(&#39;.comment-box button&#39;).click(function () {
   var comment_text = $(&#39;.comment-box textarea&#39;).val();
   $.ajax({
    type: &#39;POST&#39;,
    url: &#39;/bbs/article/{{ article_list.id }}/comment/&#39;,
    data: {comment: comment_text},
    success:function (callback) {
     var data = $.parseJSON(callback);
     $(&#39;.callback&#39;).html(data.result);
     if(data.result === &#39;successfully&#39;) {
      getcomment();
     }
    }
   })
  });
 });
 function getcomment() {
  $.ajax({
   type: &#39;GET&#39;,
   url: &#39;/bbs/article/{{ article_list.id }}/get_comment/&#39;,
   success:function (call) {
    var datas = $.parseJSON(call);
    $(&#39;.comment-list&#39;).html(datas.answer);
   }
  })
 }
</script>
Salin selepas log masuk

在全文加载后调用getcomment()函数,从数据库中获取评论,自己写的评论提交后再次调用getcomment()函数,自动刷新

html模板(用到是bootstrap模板):

 <p class="row">
   <p class="comment-list" style="margin-left: 10px">
   </p>
  </p>
  <p class="row">
 <article class="col-xs-12">
     <h4>请评论:</h4>
     <p class="comment-box">
      <textarea class="form-control" rows="3"></textarea>
      <span class="callback"></span><button type="submit" class="btn btn-success pull-right" style="max-width: 5px;">评论</button>
     </p>
 </article>
</p>
  <hr>
Salin selepas log masuk

视图函数:

@csrf_exempt
def comment(request,article_id):
 if request.method == &#39;POST&#39;:
  comments = request.POST[&#39;comment&#39;]
  if len(comments) < 5:
   result = u&#39;评论数需大于5&#39;
   return HttpResponse(json.dumps({&#39;result&#39;: result}))
  else:
   result = &#39;successfully&#39;
   Comment.objects.create(content= comments, article_id=article_id)
   return HttpResponse(json.dumps({&#39;result&#39;: result}))
Salin selepas log masuk

这是提交评论的函数,别忘记添加csrf装饰器

def get_comment(request, article_id):
 article_list = get_object_or_404(Article, id=article_id)
 comments = article_list.comment_set.all()
 html = &#39;&#39;
 for i in comments:
  ele = &#39;<p class="row"><article class="col-xs-12"><p class="pull-right"><span class="label label-default">作者:&#39; + &#39;i.user&#39; + &#39;</span></p><p>&#39; + i.content + &#39;<ul class="list-inline"><li><a href="#" rel="external nofollow" ></a></li></ul></article></p><hr>&#39;
  html += ele
 return HttpResponse(json.dumps({&#39;answer&#39;: html}))
Salin selepas log masuk

后台获取评论的函数。

最后将textarea的值清空:

function resettext() {
 $(&#39;.form-control&#39;).val(&#39;&#39;);
}
Salin selepas log masuk

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

ajax请求地址后加随机数防止浏览器缓存的原因

JS清除IE浏览器缓存的方法

解决浏览器记住ajax请求并能前进和后退问题

Atas ialah kandungan terperinci django ajax提交评论并自动刷新功能的实现代码. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menyelesaikan ralat 403 yang dihadapi oleh permintaan jQuery AJAX Bagaimana untuk menyelesaikan ralat 403 yang dihadapi oleh permintaan jQuery AJAX Feb 20, 2024 am 10:07 AM

Tajuk: Kaedah dan contoh kod untuk menyelesaikan ralat 403 dalam permintaan AJAX jQuery Ralat 403 merujuk kepada permintaan bahawa pelayan melarang akses kepada sumber Ralat ini biasanya berlaku kerana permintaan itu tidak mempunyai kebenaran atau ditolak oleh pelayan. Apabila membuat permintaan jQueryAJAX, anda kadangkala menghadapi situasi ini Artikel ini akan memperkenalkan cara menyelesaikan masalah ini dan memberikan contoh kod. Penyelesaian: Semak kebenaran: Mula-mula pastikan alamat URL yang diminta adalah betul dan sahkan bahawa anda mempunyai kebenaran yang mencukupi untuk mengakses sumber tersebut.

Bagaimana untuk menyelesaikan ralat permintaan jQuery AJAX 403 Bagaimana untuk menyelesaikan ralat permintaan jQuery AJAX 403 Feb 19, 2024 pm 05:55 PM

jQuery ialah perpustakaan JavaScript popular yang digunakan untuk memudahkan pembangunan sisi klien. AJAX ialah teknologi yang menghantar permintaan tak segerak dan berinteraksi dengan pelayan tanpa memuatkan semula keseluruhan halaman web. Walau bagaimanapun, apabila menggunakan jQuery untuk membuat permintaan AJAX, anda kadangkala menghadapi 403 ralat. Ralat 403 biasanya ralat akses yang dinafikan pelayan, mungkin disebabkan oleh dasar keselamatan atau isu kebenaran. Dalam artikel ini, kami akan membincangkan cara menyelesaikan permintaan jQueryAJAX yang menghadapi ralat 403

Petua Linux: Batalkan lekukan automatik apabila menampal dalam vim Petua Linux: Batalkan lekukan automatik apabila menampal dalam vim Mar 07, 2024 am 08:30 AM

Prakata: vim ialah alat penyuntingan teks yang berkuasa, yang sangat popular di Linux. Baru-baru ini, saya menghadapi masalah aneh apabila menggunakan vim pada pelayan lain: apabila saya menyalin dan menampal skrip bertulis tempatan ke dalam fail kosong pada pelayan, lekukan automatik berlaku. Untuk menggunakan contoh mudah, skrip yang saya tulis secara tempatan adalah seperti berikut: aaabbcccddd Apabila saya menyalin kandungan di atas dan menampalnya ke dalam fail kosong dalam pelayan, apa yang saya dapat ialah: aabbbcccddd Jelas sekali, ini adalah apa yang vim lakukan secara automatik kami. Walau bagaimanapun, automatik ini agak tidak pintar. Catat penyelesaiannya di sini. Penyelesaian: Tetapkan fail konfigurasi .vimrc dalam direktori rumah kami, baharu

Automount pemacu pada Linux Automount pemacu pada Linux Mar 20, 2024 am 11:30 AM

Jika anda menggunakan sistem pengendalian Linux dan mahu sistem memasang pemacu secara automatik semasa but, anda boleh melakukannya dengan menambahkan pengecam unik peranti (UID) dan laluan titik lekap pada fail konfigurasi fstab. fstab ialah fail jadual sistem fail yang terletak dalam direktori /etc Ia mengandungi maklumat tentang sistem fail yang perlu dipasang apabila sistem bermula. Dengan mengedit fail fstab, anda boleh memastikan pemacu yang diperlukan dimuatkan dengan betul setiap kali sistem dimulakan, sekali gus memastikan operasi sistem yang stabil. Memasang pemacu secara automatik boleh digunakan dengan mudah dalam pelbagai situasi. Sebagai contoh, saya merancang untuk menyandarkan sistem saya kepada peranti storan luaran. Untuk mencapai automasi, pastikan peranti kekal disambungkan ke sistem, walaupun pada permulaan. Begitu juga, banyak aplikasi akan secara langsung

PHP dan Ajax: Membina enjin cadangan autolengkap PHP dan Ajax: Membina enjin cadangan autolengkap Jun 02, 2024 pm 08:39 PM

Bina enjin cadangan autolengkap menggunakan PHP dan Ajax: Skrip sisi pelayan: mengendalikan permintaan Ajax dan mengembalikan cadangan (autocomplete.php). Skrip pelanggan: Hantar permintaan Ajax dan cadangan paparan (autocomplete.js). Kes praktikal: Sertakan skrip dalam halaman HTML dan nyatakan pengecam elemen input carian.

Bagaimana untuk menyelesaikan masalah jQuery AJAX ralat 403? Bagaimana untuk menyelesaikan masalah jQuery AJAX ralat 403? Feb 23, 2024 pm 04:27 PM

Bagaimana untuk menyelesaikan masalah jQueryAJAX ralat 403? Apabila membangunkan aplikasi web, jQuery sering digunakan untuk menghantar permintaan tak segerak. Walau bagaimanapun, kadangkala anda mungkin menghadapi kod ralat 403 apabila menggunakan jQueryAJAX, menunjukkan bahawa akses dilarang oleh pelayan. Ini biasanya disebabkan oleh tetapan keselamatan bahagian pelayan, tetapi terdapat cara untuk mengatasinya. Artikel ini akan memperkenalkan cara menyelesaikan masalah ralat jQueryAJAX 403 dan memberikan contoh kod khusus. 1. membuat

Bagaimana untuk mendapatkan pembolehubah daripada kaedah PHP menggunakan Ajax? Bagaimana untuk mendapatkan pembolehubah daripada kaedah PHP menggunakan Ajax? Mar 09, 2024 pm 05:36 PM

Menggunakan Ajax untuk mendapatkan pembolehubah daripada kaedah PHP adalah senario biasa dalam pembangunan web Melalui Ajax, halaman boleh diperoleh secara dinamik tanpa menyegarkan data. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Ajax untuk mendapatkan pembolehubah daripada kaedah PHP, dan memberikan contoh kod khusus. Pertama, kita perlu menulis fail PHP untuk mengendalikan permintaan Ajax dan mengembalikan pembolehubah yang diperlukan. Berikut ialah kod contoh untuk fail PHP mudah getData.php:

Cara menggunakan rangka kerja Django untuk mencipta projek dalam PyCharm Cara menggunakan rangka kerja Django untuk mencipta projek dalam PyCharm Feb 19, 2024 am 08:56 AM

Petua tentang cara membuat projek menggunakan rangka kerja Django dalam PyCharm, yang memerlukan contoh kod khusus Django ialah rangka kerja Web Python yang kuat yang menyediakan satu siri alat dan fungsi untuk pembangunan pesat aplikasi Web. PyCharm ialah persekitaran pembangunan bersepadu (IDE) yang dibangunkan dalam Python, yang menyediakan satu siri fungsi dan alatan yang mudah untuk meningkatkan kecekapan pembangunan. Menggabungkan Django dan PyCharm menjadikannya lebih pantas dan lebih mudah untuk mencipta projek

See all articles