JS获取地址栏参数的方法
1.
window.location.href
2.正则方法
function getUrlParam(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象 var r = window.location.search.substr(1).match(reg); //匹配目标参数 if (r!=null) return unescape(r[2]); return null; //返回参数值 }
getUrlParam("参数");
例如 index.html?id=10
getUrlParam("id");
3.原生传统方法
function UrlSearch() { var name,value; var str=location.href; //取得整个地址栏 var num=str.indexOf("?") str=str.substr(num+1); //取得所有参数 stringvar.substr(start [, length ] var arr=str.split("&"); //各个参数放到数组里 for(var i=0;i < arr.length;i++){ num=arr[i].indexOf("="); if(num>0){ name=arr[i].substring(0,num); value=arr[i].substr(num+1); this[name]=value; } } } var Request=new UrlSearch(); //实例化 alert(Request.id);
4.为jQuery扩展一个方法
(function($){ $.getUrlParam = function(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r!=null) return unescape(r[2]); return null; } })(jQuery);
$.getUrlParam('id');
参考:1.http://www.jb51.net/article/47656.htm
2.http://www.cnblogs.com/fishtreeyu/archive/2011/02/27/1966178.html