簡體   English   中英

訪問Django模板{%url%}中的HTML表單元素

[英]Accessing HTML form element inside a Django template {% url %}

我有一個帶有<form method="get" action="{% url 'handler_name' parameter %}">的Django HTML模板。 我想用表單字段的值替換parameter Django是否對此有任何規定?

urls.py

...
url(r'^sample-endpoint/$', view_function_1, name='endpoint1'),
url(r'^sample-endpoint/(\d+)/$', view_function_1, name='endpoint2'),
...

首次加載頁面時,第一個sample-endpoint/被點擊。 該頁面有一個輸入(一個數字)。 選擇一個數字並單擊一個按鈕后,第二個數字(例如sample-endpoint/1/被調用,並且同一頁面上還包含一些其他數據。

catalog.html

<form id='get-list' name='get_list_form' method='get' 
      action='{% url "endpoint2" placeholder %}'>
    {% csrf_token %}
    <select id='select-catalog-id' name='catalog_id'>
        <option value='1'>Foo</option>
        <option value='2'>Bar</option>
    </select>
</form>

我不想使用request.GET ['catalog_id']在views.py獲取服務器端的值。 我覺得有兩個URL看起來很干凈。 而且,兩個URL都用於GET請求。

我的目標是在下拉列表中使用所選項目的值(在本例中為1或2),而不是在表單操作中使用placeholder 它在Django中是開箱即用的嗎? 還是一些自定義JavaScript?

你可以用

{% if form.field.value %} value="{{ form.field.value }}" {% endif %} placeholder="{{ description }}"

暫無
暫無

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

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