博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js获取url参数值
阅读量:5777 次
发布时间:2019-06-18

本文共 1605 字,大约阅读时间需要 5 分钟。

今天碰到要在一个页面获取另外一个页面url传过来的参数,一开始很本能的想到了用 split("?")这样一步步的分解出需要的参数。

后来想了一下,肯定会有更加简单的方法的!所以在网上找到了两个很又简单实用的方法,mark下

方法一:分析法

 

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>
function 
GetRequest() {
    
var 
url = location.search;
//获取url中"?"符后的字串
    
var 
theRequest =
new 
Object();
    
if 
(url.indexOf(
"?"
) != -1) {
        
var 
str = url.substr(1);
        
if 
(str.indexOf(
"&"
) != -1) {
            
strs = str.split(
"&"
);
            
for 
(
var 
i = 0; i < strs.length; i++) {
                
theRequest[strs[i].split(
"="
)[0]] = unescape(strs[i].split(
"="
)[1]);
            
}
        
}
else 
{
            
theRequest[str.split(
"="
)[0]] = unescape(str.split(
"="
)[1]);
        
}
    
}
    
return 
theRequest;
}
 
注释:ECMAScript v3 已从标准中删除了 unescape() 函数,并反对使用它,因此应该用 decodeURI() 和 decodeURIComponent() 取而代之。

转载于:https://www.cnblogs.com/DJYBlog/p/3972217.html

你可能感兴趣的文章
一次Mutex死锁的原因探究
查看>>
flask的文件上传和下载
查看>>
如何查看java class文件的jdk版本
查看>>
ImportError: cannot import name UnrewindableBodyError
查看>>
翻翻git之---有用的欢迎页开源库 AppIntro
查看>>
Unity Shaders and Effects Cookbook (3-5) 金属软高光
查看>>
31-hadoop-hbase-mapreduce操作hbase
查看>>
C++ 代码风格准则:POD
查看>>
PHP-Windows下搭建PHP-MSF环境【原创】
查看>>
linux-友好显示文件大小
查看>>
emplace_back() 和 push_back 的区别(转)
查看>>
【转】【WPF】WPF中MeasureOverride ArrangeOverride 的理解
查看>>
ASP、Access、80040e14、保留关键字、INSERT INTO 语句的语法错误
查看>>
【转】二叉树的非递归遍历
查看>>
NYOJ283对称排序
查看>>
接连遇到大牛
查看>>
[Cocos2d-x For WP8]矩形碰撞检测
查看>>
自己写spring boot starter
查看>>
Rails Rake指南
查看>>
花钱删不完负面消息
查看>>