将搜索查询添加到地址栏

时间:2013-08-14 14:50:01

标签: php jquery html forms

我之前已经看过这个,但不确定如何。

我正在尝试将搜索表单转到pagename.php?q = [searchquery],这样我就可以从地址中获取搜索查询。

这是表格

    <form class="sidebar-search">
    <div class="input-box">
    <input type="text"  placeholder="Quick Product Search..." />                
    <input type="button" class="submit" value="" />
    </div>
    </form>

这是JS

// handle the search query submit on enter press
        $('.sidebar-search input').keypress(function (e) {
            if (e.which == 13) {
                window.location.href = "search_results.php";
                return false; //<---- Add this line
            }
        });

        // handle the search submit
        $('.sidebar-search .submit').click(function () {
            if ($('.page-container').hasClass("sidebar-closed")) {
                if ($('.sidebar-search').hasClass('open') == false) {
                    $('.sidebar-search').addClass("open");
                } else {
                    window.location.href = "search_results.php";
                }
            } else {
                window.location.href = "search_results.php";
            }
        });

任何人都可以帮忙吗?

3 个答案:

答案 0 :(得分:2)

您实际上不需要使用javascript

<form class="sidebar-search" method="get" action="search_results.php">
    <div class="input-box">
    <input type="text"  placeholder="Quick Product Search..." />                
    <input type="submit" class="submit" value="" />
    </div>
</form>

action attibute定义应该发送表单收集数据的位置(URL)。 method属性定义了使用哪种HTTP方法发送数据(可以是“get”或“post”)。

这可能有助于详细了解。

https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Forms/My_first_HTML_form?redirectlocale=en-US&redirectslug=HTML%2FForms%2FMy_first_HTML_form

但是如果你仍然需要在这里使用javascript的答案 为搜索字段定义id,如下所示

    <input type="text"  id="txtSearch" placeholder="Quick Product Search..." />

然后

var searchString = $('#txtSearch').val();
window.location.href = "search_results.php?q=" + searchString;

答案 1 :(得分:1)

这样做:

window.location.href = "search_results.php?q=" + $(".sidebar-search input[type=text]").val();

或者您可以为搜索提供ID并获取具有该ID的元素的值。

答案 2 :(得分:0)

如果你点击进入/提交,你去search.php?query = value

<form method="get" action="search.php" >
    <input name="query" type="text" />
    <input type="submit" value="search" />
</form>