
实现方法:
一:获取URL带QUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的requestquerystring,PHP的$_GET
1函数:
<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]]=(strs[i]split("=")[1]);
}
}
return theRequest;
}
</Script>
2然后通过调用此函数获取对应参数值:
<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
(r[2]); return null;
}
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
其他参数获取介绍:
//设置或获取对象指定的文件名或路径。
alert(windowlocationpathname);
//设置或获取整个 URL
为字符串。
alert(windowlocationhref);
//设置或获取与 URL
关联的端口号码。
alert(windowlocationport);
//设置或获取 URL
的协议部分。
alert(windowlocationprotocol);
//设置或获取 href
属性中在井号“#”后面的分段。
alert(windowlocationhash);
//设置或获取 location 或 URL 的
hostname 和 port 号码。
alert(windowlocationhost);
//设置或获取 href
属性中跟在问号后面的部分。
alert(windowlocationsearch);
要看你如何调用这个函数了,如果没什么特别要求,可以这样简单的实现
<input type="button" value="" onclick="javascript:thisvalue=a();">
这个JS函数是用来获取url里面的参数的。
function request(paras){
var url = locationhref;
var paraString = urlsubstring(urlindexOf("")+1,urllength)split("&");
var paraObj = {}
for (i=0; j=paraString[i]; i++){
paraObj[jsubstring(0,jindexOf("="))toLowerCase()] = jsubstring(jindexOf("=")+1,jlength);
}
var returnValue = paraObj[parastoLowerCase()];
if(typeof(returnValue)=="undefined"){
return "";
}else{
return returnValue;
}
}
使用方法request(要获取的参数名称) ,例如request(id)
然后设置img的src值(后面我只所以带了一个时间参数,是因为IE下面缓存,刷新后还可能是原来的。 如果后面带有一个最新的时间参数,那么每次刷新都会加载一个新地址。就不会出现刷新了还是以前的这种情况)
(下面都是jquery的写法。)
var img_src = request(id)+‘’+new Date();
$("#img")attr("src", ""+img_src+"");
<img id="img" src="" />
你好你是想取出这9个值是吗?
稍等上代码!!
js:
<script type="text/javascript">var url = "jieguohtmzhph&zh_1&zh_2&zh_3&zh_4&zh_5&zh_6&zh_7&zh_8";
var arr = urlsubstr(urllastIndexOf('')+1)split('&');
//locationhref = url;
consolelog(arr);
</script>
输出结构是一个数组:
希望能帮到你,有问题再追问!
在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结。
下面我们举例一个URL,然后获得它的各个组成部分:>
jquery引入地址中问号带参数的作用一般是什么? 例如:>
<script type="text/javascript" src="images/js/commonjsjsver=21136260"></script>
细细研究下来,有以下三种可能:
1) Apache URLRewrite等服务器级别的转向支持。如可以把testjsfolder=/js/解析为/js/testjs。
2) Javascript和HTML,一样,作为静态文件会被浏览器缓存。后面加个随机数,能保证每次请求都是新文件,如commonjst=12442344。
3) 这个参数是供整体页面中查询js的参数所用,属js外部应用,但绝对不是供js的内部应用。如你有一个html页面,里面写上一段:
<script type="text/javascript" src="testjsa=100&b=2"></script>
首先,这个a=100&b=2是绝对不会影响到testjs的内部函数执行的,因为testjs无法接收到这个参数。
其次,这个a=100&b=2是可以通过html中的DOM结构访问到这个js路径。如下例:
var Xsrc = documentgetElementsByTagName("script")[documentgetElementsByTagName("script")length-1]src
此时Xsrc能得到testjsa=100&b=2,然后通过正则表达式的方法来解析出这些参数:a=100及b=2。然后你拿这两个参数实现一些判断。
最后,回头来看看文首的jsver=21136260,第一种肯定是不可能的,不是每一种服务器都支持URLRewrite的。
第二种的可能性更大,防止缓存。
以上就是关于js获取url 中的值,并跳转相应页面全部的内容,包括:js获取url 中的值,并跳转相应页面、页面中如何能取到js的返回值、js获取url参数 如何改变当前页面内某个图片的地址等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)