在两个页面间通过URL传递数据时,解析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; 
}
调用: 
 
复制代码 代码示例:
alert(GetQueryString("参数名1")); 
alert(GetQueryString("参数名2")); 
alert(GetQueryString("参数名3"));
方法二: 
 
复制代码 代码示例:
<Script language="
javascript"> 
function GetRequest() { 
// www.jb200.com
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; 
} 
</Script>
调用: 
 
复制代码 代码示例:
<Script language="javascript"> 
var Request = new Object(); 
Request = GetRequest(); 
var 参数1,参数2,参数3,参数N; 
参数1 = Request['参数1']; 
参数2 = Request['参数2']; 
参数3 = Request['参数3']; 
参数N = Request['参数N']; 
</Script>
关键问题:如果参数中含有中文字符,请注意转编码和解码: 
1,传参页面 
Js代码:
 
复制代码 代码示例:
<script type=”text/javascript”> 
function send(){ 
var url = "test01.html"; 
var userName = $("#userName").html(); 
window.open(encodeURI(url + "?userName=" + userName)); } 
</script>
2,接收参数页面:test02.html 
 
复制代码 代码示例:
<script> 
var urlinfo = window.location.href;//获取url 
var userName = urlinfo.split(“?”)[1].split(“=”)[1]; //拆分url得到”=”后面的参数 
$(“#userName”).html(decodeURI(userName)); 
</script>