如何用JavaScript获取URL参数的两种方法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计498个文字,预计阅读时间需要2分钟。
使用JavaScript获取URL参数,并在页面中操作跳转:
javascript// 获取URL参数function getUrlParameter(param) { var url=window.location.href; var regex=new RegExp('[?&]' + param + '(=([^]*)|&|#|$)'), results=regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ' '));}
// 使用参数进行页面跳转var param1=getUrlParameter('param1');var param2=getUrlParameter('param2');window.location.href='要跳转的页面?' + 'param1=1¶m2=' + param2 + '&rel=external&nofollow';
这次是使用JavaScript来获取url(request)中的参数
在日常页面编写的过程中为了方便操作在<script>中通过使用window.location.href="要跳转的页面?参数1=" rel="external nofollow" +值1+"&参数2="+值2 来进行页面跳转并传值。
那么在跳转过去的页面怎样在<script>中获取到传过来的参数呢?
下面是小编的一个案例:
//参数传出页面
window.location.href = "Frameset.aspx?name=" + username + "&tbpwd="+tbpwd;//这里是我要将username和tbpwd作为参数传到Frameset.aspx这个页面上
一、字符串分割分析法
//参数接收页面(Frameset.aspx) <script type="text/javascript" language="javascript"> $(function () { var url = location.search; ////获取接收到的url中含"?"符后的字串 var request = new Object(); //实例化一个对象 if (url.indexOf("?") != -1) { //判断“?”后面是否有值 var str = url.substr(1) //去掉括?号 strs = str.split("&"); for (var i = 0; i < strs.length; i++){ request[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);//将参数和对应的值使用split函数切割出来 } } //以此获取url串中所带的同名参数 alert(request["name"]); alert(request["tbpwd"]); }) </script>
二、正则分析法
<script type="text/javascript" language="javascript"> 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")); </script>
以上两种方法都是可以实现js通过window.location.href进行页面跳转及传参后在跳转后的页面接收到参数!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计498个文字,预计阅读时间需要2分钟。
使用JavaScript获取URL参数,并在页面中操作跳转:
javascript// 获取URL参数function getUrlParameter(param) { var url=window.location.href; var regex=new RegExp('[?&]' + param + '(=([^]*)|&|#|$)'), results=regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ' '));}
// 使用参数进行页面跳转var param1=getUrlParameter('param1');var param2=getUrlParameter('param2');window.location.href='要跳转的页面?' + 'param1=1¶m2=' + param2 + '&rel=external&nofollow';
这次是使用JavaScript来获取url(request)中的参数
在日常页面编写的过程中为了方便操作在<script>中通过使用window.location.href="要跳转的页面?参数1=" rel="external nofollow" +值1+"&参数2="+值2 来进行页面跳转并传值。
那么在跳转过去的页面怎样在<script>中获取到传过来的参数呢?
下面是小编的一个案例:
//参数传出页面
window.location.href = "Frameset.aspx?name=" + username + "&tbpwd="+tbpwd;//这里是我要将username和tbpwd作为参数传到Frameset.aspx这个页面上
一、字符串分割分析法
//参数接收页面(Frameset.aspx) <script type="text/javascript" language="javascript"> $(function () { var url = location.search; ////获取接收到的url中含"?"符后的字串 var request = new Object(); //实例化一个对象 if (url.indexOf("?") != -1) { //判断“?”后面是否有值 var str = url.substr(1) //去掉括?号 strs = str.split("&"); for (var i = 0; i < strs.length; i++){ request[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);//将参数和对应的值使用split函数切割出来 } } //以此获取url串中所带的同名参数 alert(request["name"]); alert(request["tbpwd"]); }) </script>
二、正则分析法
<script type="text/javascript" language="javascript"> 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")); </script>
以上两种方法都是可以实现js通过window.location.href进行页面跳转及传参后在跳转后的页面接收到参数!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

