在WEB前端开发的时候,往往会需要获取到URL中传来的参数,以下代码即是其相关操作过程:
URL
传递数据的格式如下:
http://test.ikangtai.com/bbs/PersonServlet?openId=123456789
当我们要通过jsp将其传递的数据取出来的时候,我们需要在javascript中这样写:
< script type = "text/javascript" >
$(function() {
//获取url中传来的数据
var openId = getParamValue("openId");
//当传递过来的数据中包含有中文数据的时候,需要在添加编码设置,
//也就可以写成这样:var name = decodeURI(getParamValue("userName"));这样写的话
//就可以正确获得中文字符。
});
//分解url获得数据部分
function getUrlParams() {
var search = window.location.search;
// 写入数据字典
var tmparray = search.substr(1, search.length).split("&");
var paramsArray = new Array;
if (tmparray != null) {
for (var i = 0; i < tmparray.length; i++) {
var reg = /[=|^==]/; // 用=进行拆分,但不包括==
var set1 = tmparray[i].replace(reg, '&');
var tmpStr2 = set1.split('&');
var array = new Array;
array[tmpStr2[0]] = tmpStr2[1];
paramsArray.push(array);
}
}
// 将参数数组进行返回
return paramsArray;
}
// 根据参数名称获取参数值
function getParamValue(name) {
var paramsArray = getUrlParams();
if (paramsArray != null) {
for (var i = 0; i < paramsArray.length; i++) {
for (var j in paramsArray[i]) {
if (j == name) {
return paramsArray[i][j];
}
}
}
}
return null;
}
< /script>