我的 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 View ,但它不合作。我已经尝试了几种方法,但只有当显示结果的页面与搜索表单所在的页面相同时,我似乎才能让事情正常工作,但这里的情况并非如此。
任何帮助或建议都会有很大帮助。我有一个搜索功能和所有内容以及一个显示内容的模板,但我需要重定向到/search-results 最好使用 {% url 'search-results' %}
编辑:
我尝试将 {% templatetag openblock %}url 'search-results'{% templatetag closeblock %}
放入表单的操作中,但出现错误页面未找到,因为它呈现的网址如下: 127.0.0.1:8000/%7B%25%20url%20'search-results%20%25%7D?q=QUERYGOESHERE 如果它实际上可以通过使用一个好的网址访问正确的 View ,那么这将是完美的,我不'不知道如何让它使用 django 模板标签而不创建延迟的 url 字符串。如果我只是执行 {% url 'search-results
%}` 我会收到错误,所以我至少必须以这种方式转义它们。我很困惑。
最佳答案
输入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();
}
关于jquery - Django 搜索框位于与结果不同的页面上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31353392/