Javascript抓住document.URL的最后一部分?

时间:2009-12-02 18:49:30

标签: javascript

我想抓住当前网址的最后一部分:

网址:http://example.com/test/action

我想抓住“行动”。

该结构中的URL始终一致。但最后它可能会有一些额外的参数。

这是使用原型框架的rails应用程序。在rails中它将是params [:id]。

6 个答案:

答案 0 :(得分:24)

您只需在window.location.href上使用.split(),然后抓住最后一个条目。

示例:

var lastPart = window.location.href.split("/").pop();

答案 1 :(得分:3)

使用document.location.href.substring( document.location.href.lastIndexOf( '/' ) );

答案 2 :(得分:3)

其他答案很好,但是如果您的网址如下:

http://example.com/test/action?foo=bar

他们将无法给你“行动”。要执行此操作,您需要使用pathname,其中仅包含不包含查询字符串参数的路径信息(在这种情况下为/test/action):

location.pathname.split('/').pop();

答案 3 :(得分:0)

使用jquery:

var idFromUrl = window.location.href.split("/").pop();
$('#various3').attr('href', $('#various3').attr('href').replace('placed_id', idFromUrl)); 

答案 4 :(得分:0)

下面是我的工作javascript解决方案。希望它可以帮助一些人,因此发布。这个解决方案是检索url的最后一部分,留下一般不需要的查询字符串部分。它有助于识别访问发生在哪个页面并编写逻辑基于此。

 var url = document.referrer;
    var start = url.lastIndexOf("/") + 1;
    var len = url.indexOf("?");
    if (len > 0)
        url = url.substring(start, len);
    else
        url = url.substring(start);

答案 5 :(得分:0)

忽略所有答案并使用:window.location.pathname.substr(1);这样简单。