我的django网站上有一个搜索框,代码如下:
<li>
<i class="search fa fa-search search-btn"></i>
<form action="" method="get" class="search-open">
<div class="input-group animated fadeInDown">
<input id="searchfield" type="text" class="form-control" placeholder="Search" name="searchfield">
<span class="input-group-btn">
<button id="searchbutton" class="btn-u" type="button">Go</button>
</span>
</div>
</form>
</li>
我需要提交此搜索表单并让它通过Django视图,但它不会合作。我已经尝试了一些方法但是如果显示结果的页面与搜索表单相同的页面不是这里的情况,我似乎只能让事情发挥作用。
任何帮助或建议都会有所帮助。我有一个搜索功能,所有内容和模板都可以显示内容,但我需要重定向到/搜索结果,最好使用{% url 'search-results' %}
编辑:
我尝试在表单的操作中放置{% templatetag openblock %}url 'search-results'{% templatetag closeblock %}
,但是我找不到错误页面,因为它呈现的URL如下:127.0.0.1:8000 /%7B%25%20url%20'search-results% 20%25%7D?q = QUERYGOESHERE如果通过使用好的URL实际访问正确的视图,这将是完美的,我不知道如何使用django模板标签而不是创建一个延迟的url字符串。如果我只做{% url 'search-results
%}`我得到一个错误,所以我必须至少以这种方式逃避它们。我很难过。
答案 0 :(得分:1)
输入js文件
var submit=document.querySelector('#searchbutton');
var input=document.querySelector('#searchfield');
submit.addEventListener("click",calc,false);
function calc(){
var b = input.value;
"""set value of b equal to input in searchfield"""
var a = [];
a.push(b);
"""to store value of b in array a"""
document.getElementById('searchfield').value="";
"""to set value of searchfield to blank"""
b.clear();
}
答案 1 :(得分:0)
解决方案是将表单操作设置为/search-results/
,而不是使用快捷方式{% url 'search-results' %}