jquery获取URL中参数,解决中文乱码问题

来源:互联网 发布:淘宝号为什么用不了 编辑:程序博客网 时间:2024/05/20 02:51

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

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

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;//获取urlvar userName = urlinfo.split(“?”)[1].split(“=”)[1];//拆分url得到”=”后面的参数$(“#userName”).html(decodeURI(userName));</script>



原创粉丝点击