Django - 根据下拉列表更改发送表单的路由
Django - Change the route of sending a form based on dropdown
我目前正在制作一种内部搜索引擎,在下拉列表中有多个选项,它一开始可以工作,但我想更改表单以根据下拉列表获取网址,这样我就可以得到:
example.com/search/**Option_Value_Here**/?q=my+query
我正在使用Django作为框架
<form action="/search/" method="get">
<input name="q" id="query" value="{{ query }}" type="text" autocomplete="off">
<select id="category" name="select-name" method="get">
<option value="Jose">Jose</option>
<option value="Mike">Mike</option>
<option value="Mary_Ann">Mary Ann</option>
<option value="chaplin">Chaplin</option>
</select>
<input value="Search" class="fit" type="submit">
</form>
我的问题是是否有办法可以更改表单操作的路径:
<form action="/search/{{ Option_Value_Here }}}/" method="get">
谢谢你的时间。
问候
你可以
用JavaScript/jQuery做到这一点。
<form id="myform">
...
</form>
$(".category").change(function(){
value = $(this).val()
$('.myform').attr('action', "/search/" + value)
});
请记住将代码放在$(document).ready()
侦听器中。
想要避免使用 JavaScript?可以直接在模板中获取值。如果用户更改下拉值,则无法更改该值:在这种情况下,您唯一的机会是根据用户在下拉列表中选择的内容重定向views.py
中的用户。
记住:Django 只是渲染一个页面并将其发送给用户。在对你的服务器进行新调用之前发生什么,都不是 Django 的可能性,而是 JavaScript 的可能性。
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何使用WCF服务和javascript表单post上传.doc文件
- Javascript生成的表单未提交
- 如何使用javascript或html下载PDF格式的填写表单
- HTML表单提交时未执行外部函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- Ajax发布表单序列化,发布引号'
- 多级HTML表单
- 流星 - 添加带有熨斗的路由后无法提交用户.路由器到登录和注册表单
- 如何使用自动表单和iron路由器重定向到新页面
- 在表单提交时使用 URL 发送路由参数
- Django - 根据下拉列表更改发送表单的路由
- 在angular.js中通过表单提交向路由传递一个参数
- 如何处理带有多个提交和Laravel路由的AJAX表单提交
- 如何使用路由在nodejs应用程序中发布表单数据
- 主干表单提交路由
- 无法POST到来自和HTML表单的路由
- AngularJS - 表单参数不是通过使用 PHP 中的角度路由提交表单来传递的
- 在表单提交时返回错误/成功消息的路由