jquery获取URL中参数解决中文乱码问题的两种方法

  从A页面通过url传参到B页面时,解析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"));

  方法二:

  

复制代码 代码如下:

  <span style="font-size: 16px;"><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></span>

  这样调用:

  

复制代码 代码如下:

  <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>

  如果参数中含有中文字符,注意转编码和解码:

  

复制代码 代码如下:

  <span style="font-size:18px;">1.传参页面

  Javascript代码:<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></span>