如何使用jQuery获取部分路径?

时间:2011-07-07 11:39:16

标签: jquery

我有以下网址www.webiste.com/Services/allservices.html

我如何使用jQuery获取此URL的一部分?

例如'services' 或'allservices.html'

任何建议都非常感谢。

6 个答案:

答案 0 :(得分:13)

var url = "www.webiste.com/Services/allservices.html"
    url = url.split("/");
    alert(url[1]);

在上面的示例中,在找到url(分隔符)时拆分字符串/并将其保存在数组中。然后使用正确的索引,您可以使用您希望的子字符串(在上面的示例中将警告Services)。

演示:http://jsfiddle.net/jcNSs/

split()的更多信息:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/split

答案 1 :(得分:6)

var url = 'http://www.website.com/Services/allservices.html';

// Getting the file name (allservices.html)
var fn = url.split('/').reverse()[0];

// Getting the extension (html)
var ext = url.split('/').reverse()[0].split('.').reverse()[0];

// Getting the last middle part (services)
var lm = url.split('/').reverse()[1];

答案 2 :(得分:5)

如果您使用的是JavaScript window.location,则可以使用“/”分割location.pathname并使用pop()获取最后一个元素或按索引获取:

var splitUrlArray = urlString.split('/'); 
var lastPart = splitUrlArray.pop();
var firstPart = splitUrlArray[0]; 

有关window.location的详细信息,请阅读http://davidwalsh.name/javascript-window-location

答案 3 :(得分:2)

用“/”拆分,然后选择最后一个元素。

var parts = $("selectorForText").val().split("/");
//parts[0] = www.website.com
//parts[1] = Services
//parts[2] = allservices.html

这样的效果会起作用 - 重要的位是split()函数,并且识别它返回一个字符串数组

- 编辑提供示例 -

答案 4 :(得分:1)

这不是一个jQuery问题,因为有一些javascript函数可以帮助你(显然它仍然可以在jQuery中使用)。最简单的方法是在路径分隔符上拆分,然后根据需要操作它:

a = "www.website.com/Services/allservices.html".split("/")

 => ["www.website.com", "Services", "allservices.html"]

然后你可以把它拼凑起来然后你喜欢:

  • 主机

    a.slice(0)=> “www.website.com”

  • 路径

    a.slice(1,a.size())=> [“服务”,“allservices.html”] a.slice(1,a.size())。join(“/”)=> “服务/ allservices.html”

享受: - )

答案 5 :(得分:0)

另一种更简单的方法:

urlParts = "www.website.com/About/subpage1.html".split("/")
    var Part1= urlParts[1]+"/";   // e.g. About/
    var Part2 = urlParts[2];      // e.g. subpage1.html