JS/JQ獲取url參數

獲取頁面鍵值對參數

例:html?id=123

獲取url鍵值對參數

function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]);
    return null;
}

獲取頁面非鍵值對參數

例:html?123

獲取url非鍵值對參數

function GetRequest() {
    var url = location.search; //獲取url中"?"符後的字串
    var theRequest = new Object();
    if (url.indexOf("?") != -1) {
        var str = url.substr(1);
        strs = str.split("&");
        for(var i = 0; i < strs.length; i ++) {
            theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
        }
    }
    return theRequest;
}

獲取當前js的url中的鍵值對參數

例:js?id=123

用法:GetParameters(id);

代碼:

獲取url非鍵值對參數

/*!
 * urlParameters 獲取js文件後的url參數組,如:test.js?id=1&classid=2中的?後面的內容
 */
urlParameters = (function(script){
    var l = script.length;
    for(var i = 0; i < l; i++){
        me = !!document.querySelector ? script[i].src : script[i].getAttribute('src',4);
        if( me.substr(me.lastIndexOf('/')).indexOf('menu_hover') !== -1 ){
            break;
        }
    }
    return me.split('?')[1];
})(document.getElementsByTagName('script'))
/*!
 * 獲取url參數值函數
 */
GetParameters = function ( name ){
    if( urlParameters || urlParameters.indexOf('&') > 0 ){
        var parame = urlParameters.split('&'), i = 0, l = parame.length, arr;
        for(var i=0 ; i < l; i++ ){
            arr = parame[i].split('=');
            if( name === arr[0] ){
                return arr[1];
            }
        }
    }
    return null;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章