使用 jQuery 或者 JavaScript 怎么解析 URL 地址

绿悠悠 发布于 2011/07/11 09:02
阅读 8K+
收藏 4

例如我想解析下面这个 URL 中的 img_id 参数:

http://mysite.com/form_image_edit.php?img_id=33

我该怎么写这个解析参数的函数呢?

加载中
3
敬水仙
敬水仙
var request =
{
    QueryString : function(val)
    {
        var uri = window.location.search;
        var re = new RegExp("" +val+ "=([^&?]*)", "ig");
        return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null);
    }
}

var imgId= request.QueryString("img_id");
1
鉴客
鉴客
方法2:
var url = window.location;
var urlAux = url.split('=');
var img_id = urlAux[1]
1
letjs_in
letjs_in
我的博客有一个js的url的parser,很强大的。 http://my.oschina.net/femdom/blog/26176
0
鉴客
鉴客

方法1:

var s = "http://mysite.com/form_image_edit.php?img_id=33";
var id = s.match(/img_id=([^&]+)/)[1]
0
鉴客
鉴客

方法3:

function getQuerystring2(key, default_) 
{ 
    if (default_==null) 
    { 
        default_=""; 
    } 
    var search = unescape(location.search); 
    if (search == "") 
    { 
        return default_; 
    } 
    search = search.substr(1); 
    var params = search.split("&"); 
    for (var i = 0; i < params.length; i++) 
    { 
        var pairs = params[i].split("="); 
        if(pairs[0] == key) 
        { 
            return pairs[1]; 
        } 
    } 


    return default_; 
}
0
鉴客
鉴客

方法4:

function parseUrl( url ) {
    var a = document.createElement('a');
    a.href = url;
    return a;
}

//下面方法调用返回 ?img_id=33
parseUrl('http://mysite.com/form_image_edit.php?img_id=33').search
0
liuweihug
liuweihug

这里有有一个总结的介绍

http://www.suchso.com/projecteactual/javascript-url-js-parse_7377.html

返回顶部
顶部