34

在javascript中,如何获取当前url的相对路径?

例如http://www.example.com/test/this?page=2

我想要的只是/test/this?page=2

4

7 回答 7

78

尝试

window.location.pathname+window.location.search
于 2010-12-21T22:55:53.503 回答
5
location.href

保存您的脚本正在运行的页面的 url。

于 2010-12-21T22:54:17.917 回答
5

最快、最完整的方法:

location.href.replace(/(.+\w\/)(.+)/,"/$2");
于 2013-12-03T18:29:18.073 回答
4

location.href.replace(location.origin,'');

只有奇怪的情况: http://foo.com/ >> "/"

于 2016-08-25T22:28:17.213 回答
3

您可以使用以下代码段获取任何页面的绝对 URL。

 var getAbsoluteUrl = (function() {
     var a;
     return function(url) {
         if(!a) a = document.createElement('a');
         a.href = url;
         return a.href;
     }
})();
    
// Sample Result based on the input.
getAbsoluteUrl('/'); //Returns http://stackoverflow.com/

Checkout使用 Javascript 获取绝对 URL 以获取更多详细信息以及实现相同功能的多种方法。

于 2015-12-01T12:36:36.230 回答
1

我用这个:

var absURL = document.URL;
alert(absURL);

参考:http ://www.w3schools.com/jsref/prop_doc_url.asp

于 2011-06-10T21:49:15.460 回答
0

您应该以 javascript 方式使用它,从页面中检索包括扩展名在内的完整路径,

$(location).attr('href'); 

所以,像这样的路径,也可以被检索到。

www.google.com/results#tab=2  
于 2015-11-17T13:19:57.353 回答