在js中如何获取地址栏上的参数呢

我们知道在PHP开发中,有一个强大的全局函数 $_GET

可以方便的帮我们找到地址栏上的变量,如找页数$_GET[‘page‘].

那么在js中怎么能获取到呢?

我们可以封装一个js函数,以方便取地址栏上的参数.

js中可以用一个全局的变量

window.location.search; 它就是存放地址栏内容的一个节点(姑且这么理解吧,反正我是这样理解的);

剩下的事,就是运用js的处理字符串的功夫了.

首先我们看 通过  window.location.search得到的url.

url字符串中是否 ‘?‘ 号. 存在?号才有可能存在参数,如果不存在则不用去理会了,直接把strId返回,也就是初始赋值"".


好,如果有?号,说明有参数!

继续分析!

那我们看看有没有 &号吧,

如果没有,我们直接用"="分割处理后的字符串,得到想要的参数!


如果有,说明有多个参数,我们得用 & 号将后一段字符分成数组,并循环它,直到分析的单元中再用"="分割字符串和传入的参数一致,那么就将该单元用 "=" 分割的后一段字符串赋值给strId,返回,大功告成.


文字描述,甚是旦疼,直接把上方法


function myQueryString(str){

       var strId=‘‘;
       var url=window.location.search;    //为测试方便,你可以写死一个地址栏字符串在这里如index.php?id=1
       if(url.indexOf(‘?‘)!= -1){
           strs=url.split(‘?‘)[1];
           if(strs.indexOf(‘&‘)!= -1){
                   oStr=strs.split(‘&‘);
                   var len = oStr.length
                   for(var i=0;i<len;i++){
                       if(oStr[i].split(‘=‘)[0]== str){
                               strId=oStr[i].split(‘=‘)[1];
                       }
                   }
           }else{
               if(strs.split(‘=‘)[0] == str){
                   strId=strs.split(‘=‘)[1];
               }
           }
       };
       return strId;

   }

myQueryString(id);

传入什么参数,就能得到什么参数的值


本文出自 “909是个目标” 博客,请务必保留此出处http://robert1joy.blog.51cto.com/4489523/1403348

在js中如何获取地址栏上的参数呢,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。