用JavaScript获取地址栏参数的方法

/**
 *  获取地址栏参数
 *
 * @example GetUrlString('id')
 *
 * @desc    调用时加上判断,保证程序不会出错
 *             var myurl = GetUrlString('id');
 *             if (myurl != null && myurl.toString().length > 1) {
 *                  alert(GetUrlString("id"));  
 *             }
 *
 * @param String  param 要获取地址栏中的参数名
 * @return String Value
 * @type String
 *
 * @name GetUrlString()
 *
 * @author Iceman / 254784109@qq.com
 */

function GetUrlString(param) {
    var sValue = location.search.match(new RegExp("[\?\&]" + m + "=([^\&]*)(\&?)", "i"));
    return sValue ? decodeURI(sValue[1]) : decodeURI(sValue);
}

调用的时候统一做这样的判断,避免你没有传参数的话,比如你的地址是 abc.html 后面没有参数,那强行输出调用结果有的时候会报错

window.onload = function() {    
    var myurl = GetParm("id");
    if (myurl != null && myurl.toString().length > 1) {
        alert(GetParm("id"));
    }
}

这样就不会报错了!

注释:ECMAScript v3 已从标准中删除了 unescape() 函数,并反对使用它,因此应该用 decodeURI() 和 decodeURIComponent() 取而代之。

原文地址:https://www.cnblogs.com/IcemanZB/p/4142484.html