日期:2014-05-16  浏览次数:20409 次

JS读取当前URL的一些属性(转)

from? http://weivs929.iteye.com/blog/1102245

设置或获取对象指定的文件名或路径:window.location.pathname
设置或获取整个 URL 为字符串:window.location.href
设置或获取与 URL 关联的端口号码:window.location.port
设置或获取 URL 的协议部分:window.location.protocol
设置或获取 href 属性中在井号“#”后面的分段:window.location.hash
设置或获取 location 或 URL 的 hostname 和 port 号码:window.location.host
设置或获取 href 属性中跟在问号后面的部分:window.location.search

index.htm?参数1=数值1&参数2=数值2&参数3=数据3&参数4=数值4&......

静态html文件js读取url参数 根据获取html的参数值控制html页面输出

一、字符串分割分析法。

  这里是一个获取URL带QUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的request.querystring,PHP的$_GET

函数:

<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>

然后我们通过调用此函数获取对应参数值:

<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>

以此获取url串中所带的同名参数

二、正则分析法。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"));