使用Javascript获取当前URL的一部分

时间:2013-10-18 14:18:21

标签: javascript

我正在使用javascript传递的网址中的$ _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&amp; pesquisa = test

当然,page_id是可变的。如果我再次搜索,网址将是:MYURL /?page_id = 51&amp; pesquisa = test&amp; pesquisa = new,有什么不对。

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

感谢。

4 个答案:

答案 0 :(得分: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()'>

答案 1 :(得分:0)

试试这个。

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

资源:

答案 2 :(得分:0)

任何天真搜索都会容易受到以下问题的影响:如果网址是:

  

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

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

var caminho = document.URL.replace(/([?&])pesquisa=[^&]+&?/,"$1")+"&pesquisa="+pesquisar;

答案 3 :(得分: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>
希望有所帮助。