欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js獲取url參數(shù)代碼實(shí)例分享(JS操作URL)

 更新時(shí)間:2013年12月13日 09:47:33   作者:  
這篇文章主要介紹了js分析url獲取url參數(shù),可以獲取?前面部分、#及后面部分,大家看代碼吧

代碼很簡單,主要一個(gè)思路是把url參數(shù)解析為js對象,再做增、刪、改、查操作就很方便了~,這里做筆記。

復(fù)制代碼 代碼如下:

var LG=(function(lg){
    var objURL=function(url){
        this.ourl=url||window.location.href;
        this.href="";//?前面部分
        this.params={};//url參數(shù)對象
        this.jing="";//#及后面部分
        this.init();
    }
    //分析url,得到?前面存入this.href,參數(shù)解析為this.params對象,#號(hào)及后面存入this.jing
    objURL.prototype.init=function(){
        var str=this.ourl;
        var index=str.indexOf("#");
        if(index>0){
            this.jing=str.substr(index);
            str=str.substring(0,index);
        }
        index=str.indexOf("?");
        if(index>0){
            this.href=str.substring(0,index);
            str=str.substr(index+1);
            var parts=str.split("&");
            for(var i=0;i<parts.length;i++){
                var kv=parts[0].split("=");
                this.params[kv[0]]=kv[1];
            }
        }
        else{
            this.href=this.ourl;
            this.params={};
        }
    }
    //只是修改this.params
    objURL.prototype.set=function(key,val){
        this.params[key]=val;
    }
    //只是設(shè)置this.params
    objURL.prototype.remove=function(key){
        this.params[key]=undefined;
    }
    //根據(jù)三部分組成操作后的url
    objURL.prototype.url=function(){
        var strurl=this.href;
        var objps=[];//這里用數(shù)組組織,再做join操作
        for(var k in this.params){
            if(this.params[k]){
                objps.push(k+"="+this.params[k]);
            }
        }
        if(objps.length>0){
            strurl+="?"+objps.join("&");
        }
        if(this.jing.length>0){
            strurl+=this.jing;
        }
        return strurl;
    }
    //得到參數(shù)值
    objURL.prototype.get=function(key){
        return this.params[key];
    }   
    lg.URL=objURL;
    return lg;
}(LG||{}));

LG只是我個(gè)人共同JS的名稱空間,無他。調(diào)用:

復(fù)制代碼 代碼如下:

var myurl=new LG.URL("http://www.baidu.com?a=1");

    myurl.set("b","hello"); //添加了b=hello
    alert (myurl.url());

    myurl.remove("b"); //刪除了b

    alert(myurl.get ("a"));//取參數(shù)a的值,這里得到1

    myurl.set("a",23); //修改a的值為23

    alert (myurl.url());

相關(guān)文章

最新評論