来自url的FileName不包括查询字符串

时间:2011-05-17 18:22:42

标签: javascript jquery

我有一个网址:

http://www.xyz.com/a/test.jsp?a=b&c=d

如何获取test.jsp

6 个答案:

答案 0 :(得分:8)

这应该这样做:

var path = document.location.pathname,
    file = path.substr(path.lastIndexOf('/'));

参考: document.locationsubstrlastIndexOf

答案 1 :(得分:0)

我不会告诉你答案,但我会给你指路。首先......在“?”之后删除所有内容。通过使用字符串实用程序和location.href.status(将为您提供查询字符串)。那么你将留下的是URL;在最后一个“/”之后获取所有内容(提示:lastindexof)。

答案 2 :(得分:0)

使用正则表达式。

var urlVal ='http://www.xyz.com/a/test.jsp?a = b& c = d'; var result = / a \ /(。*)\?/。exec(urlVal)[1]

正则表达式返回一个数组,使用[1]来获取test.jsp

答案 3 :(得分:0)

此方法不依赖于路径名:

    <script>
        var url = 'http://www.xyz.com/a/test.jsp?a=b&c=d';
        var file_with_parameters = url.substr(url.lastIndexOf('/') + 1);
        var file = file_with_parameters.substr(0, file_with_parameters.lastIndexOf('?')); 
        // file now contains "test.jsp"
    </script>

答案 4 :(得分:0)

var your_link = "http://www.xyz.com/a/test.jsp?a=b&c=d";

// strip the query from the link
your_link = your_link.split("?");
your_link = your_link[0];

// get the the test.jsp or whatever is there
var the_part_you_want = your_link.substring(your_link.lastIndexOf("/")+1);

答案 5 :(得分:0)

试试这个:

/\/([^/]+)$/.exec(window.location.pathname)[1]