0

我正在使用 javascript 传递的 url 中的 $_GET 变量在 Wordpress 页面中开发一个简单而小型的搜索:

<script>
function pesquisar()
{
    var pesquisar = document.getElementById('termo').value;
    var caminho = document.URL+'&pesquisa='+pesquisar;
    window.location = caminho;
}
</script>

<input type='text' id='termo'>
<input type='button' value='pesquisar' onclick='pesquisar()'>

所以,要搜索的网址是:MYURL/?page_id=51&pesquisa=test

当然,page_id 是可变的。如果我再次搜索,URL 将是:MYURL/?page_id=51&pesquisa=test&pesquisa=new,这是怎么回事。

我怎样才能得到 MYURL/?page_id=51 使用javascript?window.location.pathname 不是我需要的。

谢谢。

4

4 回答 4

0

试试这个希望它应该工作

<script>
function pesquisar()
{
    var pesquisar = document.getElementById('termo').value;
    var caminho = location.protocol + '//' + location.host + location.pathname+'&pesquisa='+pesquisar;
    window.location = caminho;
}
</script>

<input type='text' id='termo'>
<input type='button' value='pesquisar' onclick='pesquisar()'>
于 2013-10-18T14:21:07.173 回答
0

试试这个。

var a = document.URL;
    var result = a.substr(0, a.indexOf('&'));

资源:

于 2013-10-18T14:21:28.027 回答
0

任何天真地搜索的东西都容易受到以下问题的影响:如果 URL 是:

http://example.com/?pesquisa=test&page_id=51

您需要搜索并删除相关的查询参数:

var caminho = document.URL.replace(/([?&])pesquisa=[^&]+&?/,"$1")+"&pesquisa="+pesquisar;
于 2013-10-18T14:22:10.713 回答
0

javascript:

<script type="text/javascript">

function get_query_param(name) {
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
        results = regex.exec(location.search);
    return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}

window.onload = function() {
    if (get_query_param("page_id") != null) {
        alert(window.location.pathname + "?page_id=" + get_query_param('page_id'));
    }
}
</script>

希望有帮助。

于 2013-10-18T14:22:17.543 回答