惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
H
Help Net Security
Jina AI
Jina AI
V
V2EX
G
Google Developers Blog
B
Blog
GbyAI
GbyAI
U
Unit 42
爱范儿
爱范儿
腾讯CDC
Engineering at Meta
Engineering at Meta
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
小众软件
小众软件
D
DataBreaches.Net
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - Franky
博客园 - 聂微东
The Cloudflare Blog
I
InfoQ
Microsoft Azure Blog
Microsoft Azure Blog
Hugging Face - Blog
Hugging Face - Blog
大猫的无限游戏
大猫的无限游戏

博客园 - ymz

C#异常的一些使用原则 【转】[翻译]Visual Studio2008的新功能:代码度量 【转】也谈c#调用C++的DLL找不到入口点 Develope express学习 【摘】异源数据转换与FDO数据访问 线程同步 线程异步 【转】ArcEngine中创建自定义工具 【转】HTML标签大全 MapGuide常见错误解决方法 集合类及泛型 一个网站系统的经验 frameset学习摘录 【转】如何使用.NET配置文件by沐枫小筑 【转】Notes on the Eclipse Plug-in Architecture 【转】理解session机制 困扰了一天的字符集转换问题 【转】Sys.WebForms.PageRequestManagerParserErrorException - what it is and how to avoid it 【转】获取GridView单元格值的通用函数
【转贴】利用 Javascript 获取 URL 参数(适合IE、FF) - ymz
ymz · 2009-01-12 · via 博客园 - ymz

.  ... .../test.html?str=123456
如何用Javascript接收类似上面的url参数呢?这个问题网上有很多答案,看了看,主要有两种,一个是利用字符串的截取,另一种是利用正则表达式。
正则式

function QueryString(item){
     var sValue=location.search.match(new RegExp("[\?\&]"+item+"=([^\&]*)(\&?)","i"))
     return sValue?sValue[1]:sValue
}

alert(QueryString('str'));

不足就是每次只能选一个参数,当然了,你也可以修改下上面脚本,为 QueryString(item) 函数添加一个参数,例如:QueryString(item,pos) ,不过还要修改相应表达式,较为麻烦,而且没有下面这种方法灵活。

字符串(摘自:《JavaScript: The Definitive Guide, 5th Edition》)

function getArgs( ) {
     var args = new Object( );
     var query = location.search.substring(1);      // Get query string
     var pairs = query.split("&");                  // Break at ampersand
     for(var i = 0; i < pairs.length; i++) {
         var pos = pairs[i].indexOf('=');           // Look for "name=value"
         if (pos == -1) continue;                   // If not found, skip
         var argname = pairs[i].substring(0,pos); // Extract the name
         var value = pairs[i].substring(pos+1);     // Extract the value
         value = decodeURIComponent(value);         // Decode it, if needed
         args[argname] = value;                     // Store as a property
     }
     return args;                                   // Return the object
}


alert(getArgs()['str']);

alert(getArgs().str);