最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

代碼很簡單,主要一個思路是把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對象,#號及后面存入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只是我個人共同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)文章

最新評論

内丘县| 德钦县| 宁明县| 双峰县| 广南县| 津市市| 公安县| 壤塘县| 龙南县| 抚远县| 绥宁县| 大丰市| 娄底市| 富川| 孝昌县| 乐都县| 饶阳县| 静安区| 江口县| 灵寿县| 江源县| 七台河市| 清水河县| 儋州市| 余庆县| 南开区| 芜湖市| 星子县| 天等县| 红原县| 光山县| 盐山县| 洛浦县| 九寨沟县| 雷波县| 临湘市| 随州市| 宜阳县| 白水县| 平舆县| 阿荣旗|