簡體   English   中英

如何在提交表單后顯示 div 或 html 元素並從 Django 中的視圖中檢索一些信息

[英]How can I show a div or html element after submitting a form and retrieve some information from a view in Django

當前,當用戶在輸入字段中引入字符串並單擊提交按鈕時,這會調用一個視圖,該視圖通過return render(request, 'index.html', context)一個上下文,它基本上包含顯示在表格中的數據.

我希望該表僅在提交表單后才可見,而不是之前可見,並且當它可見時,它會顯示從視圖中獲得的信息。

問題是,如果通過內聯樣式使該表不可見,例如通過以下方式:

<div class="row" id="searchVariantTable" style="display: none;">
    <!-- SOME TABLE HERE-->
</div>

然后我將onsubmit事件用於表單或onclick用於按鈕,它不起作用。 (它部分工作,我可以看到tbody但缺少thead ,所以基本上我無法顯示從數據庫中檢索到的數據)。

同樣,如果我嘗試這樣的事情:

$('document').ready(function() {
  $('#searchVariantTable').hide();
  $('form').submit(function(e) {
      $('#searchVariantTable').show();
      e.preventDefault();
  });
});

它也不起作用。

如果我沒記錯的話,我認為最后一個選項是 AJAX,但我不太確定如何用 Django 做類似的事情(這是我第一次使用 Django)

我究竟做錯了什么? 有沒有我錯過的選項?

您可以嘗試在 django 模板中使用 if else :

index.html
<form method="post">
<input type="submit">
</form>
{% if allowed == "yes" %}
<!-- your table code -->
{% endif %}


and in views.py
if request.method == "POST":
    return render(request, 'index.html',{'allowed':'yes'})

else:
    return render(request,'index.html',{'allowed':'no'})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM