javascript获取超链接传递的参数,此方法亦能解决2个通过js超链页面传递参数的乱码问题

这是超链接后的页面的js处理代码,通过这个方法截取到的中文参数保存原来的格式,没有乱码

 

var str = window.location.href;//获取超链接过来的路径

       var pos;//作为第一个?/=出现的标志位 

       var parastr;//用来保存所有的参数

       var para;//遍历时获得的单个参数

       var tempstr;//区分参数名和参数值时使用 

      

       if(str.indexOf("?")>0){//判断str里是否存在?,如果存在说明有参数,进行下一步操作,否则说明没有参数

           //text.jsp?id=1&name=小李为例子

           pos = str.indexOf("?");//获得?号所在的位置

           //substring(0,pos)表示截取?前的内容即[text.jsp]substring(pos+1)表示截取?之后的内容即[id=1&name=小李]

           alert("文件路径:"+str.substring(0,pos)+"\n所有参数:"+str.substring(pos+1));

 

           parastr = str.substring(pos+1);//截取?之后的内容,即获取所有参数

           if(str.indexOf("&")>0){//如果存在&,说明有多个参数,需要进行切分

              para=parastr.split("&");//&为标记进行切分

              for(i=0;i<para.length;i++){

                  tempstr=para[i];//tempstr的值为:参数名=[para[0]:id=1,para[1]:name=小李]

                  pos=tempstr.indexOf("=");//获得=号所在的位置

                  alert("参数"+i+":"+tempstr.substring(0,pos)+"等于"+tempstr.substring(pos+1));

              }

           }else{//否则只有一个参数

              tempstr=para;

              pos=tempstr.indexOf("=");//获得=号所在的位置

              alert("参数:"+tempstr.substring(0,pos)+"等于"+tempstr.substring(pos+1));

           }

       }else{

           alert("无参数");

       }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值