Javascript 访问Django模板{%url%}内的HTML表单元素
我有一个带有Javascript 访问Django模板{%url%}内的HTML表单元素,javascript,jquery,python,html,django,Javascript,Jquery,Python,Html,Django,我有一个带有的Django HTML模板。我想用表单字段的值替换参数。Django对此有任何规定吗 url.py ... url(r'^sample-endpoint/$', view_function_1, name='endpoint1'), url(r'^sample-endpoint/(\d+)/$', view_function_1, name='endpoint2'), ... 当页面第一次加载时,将命中第一个示例端点/。该页面有一个输入(一个数字)。选择一个数字并单击一个按钮后,
的Django HTML模板。我想用表单字段的值替换参数
。Django对此有任何规定吗
url.py
...
url(r'^sample-endpoint/$', view_function_1, name='endpoint1'),
url(r'^sample-endpoint/(\d+)/$', view_function_1, name='endpoint2'),
...
当页面第一次加载时,将命中第一个示例端点/
。该页面有一个输入(一个数字)。选择一个数字并单击一个按钮后,将调用第二个按钮,例如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>
{%csrf_令牌%}
福
酒吧
我不想使用request.GET['catalog\u id']在服务器端获取views.py
中的值。我觉得有两个URL看起来很干净。而且,这两个URL都是用于GET请求的
我的目标是使用下拉列表中所选项目的值(本例中为1或2),而不是表单操作中的占位符。在Django是开箱即用的吗?或者一些自定义JavaScript?您可以使用
{% if form.field.value %} value="{{ form.field.value }}" {% endif %} placeholder="{{ description }}"
这不是Django能做的任何事情。{%url%}
标记在渲染时解析,远远早于用户选择值。你必须写一些JS。我知道这不是shar想要的答案,这对他毫无帮助。但是,这正是我找到这篇文章时所寻找的答案。我想,如果其他人使用与我相同的搜索词,并来到这篇文章,他们至少会在这里找到我的解决方案,而不会绝望地寻找其他地方。