使用js对当前的URL进行 *** 作,可以使用内置对象windowlocation;
windowlocation有以下属性:
windowlocationhref:取得当前地址栏中的完整URL,可以通过赋值改变当前地址栏中的URL;
windowlocationsearch 取得当前URL的参数部分,即“”后面的部分(包括问号),可以通过赋值改变URL的参数部分;
windowlocationhash:取得当前URL中包含的锚记,即“#”后面的部分(包括#),可以通过赋值改变URL的锚记部分;
windowlocationhost:取得当前URL中的主机信息,包括端口号,可以通过赋值改变主机信息;
windowlocationhostname:取得当前URL中的域名部分,不包括端口号,可以通过赋值改变域名;
windowlocationport:取得当前URL中的端口号,可以通过赋值改变端口号;
windowlocationpathname:取得当前URL中的路径信息,即域名与参数之间的部分,可以通过赋值改变当前URL的路径;
windowlocationprotocol:取得当前URL的协议部分,比如>
一、字符串分割分析法。
这里是一个获取URL带REQUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的requestquerystring,PHP的$_GET,jsp的requestgetParameter
//var USERCODE="<%=requestgetParameter("USERCODE")%>";
//以上是用requestgetParameter在浏览器端获取参数值, 也可以是用该方法在服务器端获取参数方法
函数:
<Script language="javascript">
function GetRequest() {
var url = locationsearch; //获取url中""符后的字串
var theRequest = new Object();
if (urlindexOf("") != -1) {
var str = urlsubstr(1);
strs = strsplit("&");
for(var i = 0; i < strslength; 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 = windowlocationsearchsubstr(1)match(reg);
if (r!=null) return unescape(r[2]); return null;
}
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
两种方法:方法一:正则分析法参考代码:functiongetQueryString(name){varreg=newRegExp("(^|&)"+name+"=([^&])(&|$)","i");varr=windowlocationsearchsubstr(1)match(reg);if(r!=null)returnunescape(r[2]);returnnull;}调用方法:alert(GetQueryString("参数名1"));alert(GetQueryString("参数名2"));方法二:字符串截取法调用:调用方法:
<script type="text/javascript">
function getpara()//获取参数的函数
{
var url=documentURL;
var para="";
if(urllastIndexOf("")>0)
{
para=urlsubstring(urllastIndexOf("")+1,urllength);
var arr=parasplit("&");
para="";
for(var i=0;i<arrlength;i++)
{
para+="第"+(i+1)+"个参数>>名:"+arr[i]split("=")[0];
para+=" 值:"+arr[i]split("=")[1]+"<br>";
}
documentwrite(para);
}
else
{
documentwrite("没有参数!");
}
}
getpara();//执行函数
</script>
将这段代码放到任何一个网页中即可看到效果
测试参数:untitledhtmla=aaaaa&b=bbbbbbbb&c=dddddddd
输出结果:
第1个参数>>名:a 值:aaaaa
第2个参数>>名:b 值:bbbbbbbb
第3个参数>>名:c 值:dddddddd
以上就是关于求一个用js读取url的方法全部的内容,包括:求一个用js读取url的方法、js 如何取url传过来的值、js中如何获取地址参数的方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)