话不多说,直接上码:
//获取参数
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
使用方法,如请求的页面为Home,请求的参数为Params1=A,Params2=B,即请求的链接则可以解析为:
Home?Params1=A&Params2=B
如果要获取A和B,则在Home页面上写上上述方法,然后js调用为
var A=GetQueryString("Params1");
var B=GetQueryString("Params2");
建议:如果请求后端交互,建议使用Post请求,而获取数据使用Get请求,理由如下:
1、Post请求比Get请求安全:Get请求的参数都在URL后面。
2、Post请求量比Get请求量大:Get因为请求数据都在URL中,URL数据是有限制的。
3、Post可以请求提交文件,Get不可以。
4、如果表单输入的数据量很大的话,Get需要写很多获取输入框数据的js,而Post直接Submit就行,如果请求地址有改变也可以重定向。