js获取url参数及中⽂乱码处理html页⾯需要获取URL中的参数值,有如下两种⽅法:
1、正则表达式解析。代码如下:
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;
}
调⽤如下:
url地址:
index.html?id=1&name=⼩丽
调⽤:
var id = getQueryString("id");
var name= getQueryString("name");
2、js解析处理
<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]]=unescape(strs[i].split("=")[1]);
    }
  }
  return theRequest;
}
</Script>
调⽤如下:
var Request = new Object();
Request = GetRequest();
var参数1,参数2,参数3,参数N;
参数1 = Request['参数1'];
参数2 = Request['参数2'];
js中文正则表达式参数3 = Request['参数3'];
参数N = Request['参数N'];
使⽤后发现如果参数值是中⽂会出现乱码问题,需要解码,⽤decodeURI就可以了:
var name = getQueryString("name");
name = decodeURI(name);
或者解析的时候直接修改:
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return decodeURI(r[2]); return null;
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。