JS根据key值获取URL中的参数值及把URL的参数转换成json对象

  作者:bea

不废话了,直接贴代码了,通过示例一讲解JS根据key值获取URL中的参数值及把URL的参数转换成json对象,示例二讲解js获取url传递参数,具体内容请看下文 示例一: //把url的参数部分转化成json对象 parseQueryString: function (url) { var reg_url = /^[^?]+?([wW]+)$/, reg_para = /([^&=]+)=([wW]*?)(&|$|#)/g, arr_url

不废话了,直接贴代码了,通过示例一讲解JS根据key值获取URL中的参数值及把URL的参数转换成json对象,示例二讲解js获取url传递参数,具体内容请看下文


示例一:


//把url的参数部分转化成json对象 




parseQueryString: function (url) {
var reg_url = /^[^?]+?([wW]+)$/,
reg_para = /([^&=]+)=([wW]*?)(&|$|#)/g,
arr_url = reg_url.exec(url),
ret = {};
if (arr_url && arr_url[1]) {
var str_para = arr_url[1], result;
while ((result = reg_para.exec(str_para)) != null) {
ret[result[1]] = result[2];
}
}
return ret;
}


// 通过key获取url中的参数值




getQueryString: function (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;
}


示例二:


js通过两种方法获取url传递参数:


js获取url传递参数方法一:


 这里是一个获取URL带QUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的request.querystring,PHP的$_GET
函数:




<Script language="javascript">
function GetRequest() {

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]]=(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>




以此获取url串中所带的同名参数


js获取url传递参数方法二 正则分析法:




function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
var r = window.location.search.substr(1).match(reg);
if (r!=null) return (r[2]); return null;
}
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));


其他参数获取介绍:


//设置或获取对象指定的文件名或路径。




alert(window.location.pathname);


//设置或获取整个 URL 为字符串。




alert(window.location.href);


//设置或获取与 URL 关联的端口号码。




alert(window.location.port);


//设置或获取 URL 的协议部分。




alert(window.location.protocol);


//设置或获取 href 属性中在井号“#”后面的分段。




alert(window.location.hash);


//设置或获取 location 或 URL 的 hostname 和 port 号码。




alert(window.location.host);



//设置或获取 href 属性中跟在问号后面的部分。




alert(window.location.search);



以上内容介绍了JS根据key值获取URL中的参数值及把URL的参数转换成json对象,js通过两种方式获取url传递参数,代码


非常简单,希望对大家有所帮助。




有用  |  无用

猜你喜欢