Django搜索框与结果分开

2024-03-28 11:26:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我的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视图,但它不会合作。我尝试了一些方法,但我似乎只有当显示结果的页面与搜索表单所在的页面是同一页面时,我才能使事情正常工作,而这里不是这样。在

任何帮助或建议都会有很大帮助。我有一个搜索函数和一个显示内容的模板,但是我需要重定向到/search results,最好使用{% 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=querygoesher如果它真的可以通过使用一个好的url来访问正确的视图,那么这将是完美的,我不知道如何让它使用django模板标记,而不是创建一个延迟的url字符串。如果我只做{% url 'search-results%}`我会得到一个错误,所以我必须至少用这种方法来逃避它们。我被难住了。在


Tags: djangodivformurl表单inputsearchgroup
2条回答

解决方案是将form操作设置为仅/search-results/,而不是使用快捷方式{% 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();
}

相关问题 更多 >