巧用正则和document.location.search获取URL参数的值

  要获取当前页面URL的参数,可能大家第一个想到是使用 window.location.href 或者是document.location.href ,获取结果诸如http://www.xxx.com/?aa=xx&bb=xx ;但是其实我们需要的只是:?aa=xx&bb=xx。这种形式可以使用 document.location.search 这个属性获取。

如果我想要获取该URL后面参数aa的值该怎么弄呢?常见的方式可能是这样:

复制代码
function( param ){
var url = window . location . toString ();
url
= url . split ('?' );
if (typeof (url [ 1 ]) == 'string' ) {
url
= url [ 1 ]. split ('&' );
for (i = 0 ;i < url . length ;i ++ )
{
s
= url [ i ]. split ("=" );
if( s[0 ] == "param" ) return s[1];
}
}
return null;
}
复制代码

改用document.location.search和正则获取参数将使代码更加简洁:

function getParameter (sProp )
{
var re = new RegExp (sProp + "=([^\&]*)" , "i" );
var a = re . exec (document . location . search );
if (a == null )
return null ;
return a [ 1 ];
};
posted @ 2011-05-27 14:42  winxp_520  阅读(3860)  评论(0)    收藏  举报
编辑推荐:
· 糊涂啊!这个需求居然没想到用时间轮来解决
· 浅谈为什么我讨厌分布式事务
· 在 .NET 中使用内存映射文件构建高性能的进程间通信队列
· 一个 java 空指针异常的解决过程
· 揭开 SQL Server 和 PostgreSQL 填充因子的神秘面纱
阅读排行:
· 从硬盘爆满到 GitHub 封号,一位前端开发者的开源历险记
· 微软又一自动化开源王炸,Selenium 慌了!
· 糊涂啊!这个需求居然没想到用时间轮来解决。
· 微服务的10大问题
· 性能优化:两条SQL索引优化,CPU占用率从40%降至25%
点击右上角即可分享
微信分享提示