技术CTO-关注编程入门知识,提供编程入门教程

您的位置: 首页 > 前端开发 > javascript > 正文

求大侠解决js获取当前网页参数的方法

来源: 技术CTO 阅读:

页面为静态页面
地址为http://www/index.php?g=Wap&m=Index&a=index&token=cup&wecha_id=o2WR-jovh-Tw9QKbYTzKHQ9NKVYw
这个页面写了一个链接

<a class="nav" href="http://www/index.php?g=Wap&m=Card&a=get_card&token=cup&wecha_id=o2WR-jovh-Tw9QKbYTzKHQ9NKVYw">会员专享</a>

现在的问题是每个用户访问页面后面的id=o2WR-jovh-Tw9QKbYTzKHQ9NKVYw 红色参数部分都不相同,且链接也要根据不同用户访问的参数不同而做相应改变,思考了很久也不知道有什么好办法来解决。
JS应该是比较好的适用与静态页面的方法
忘大侠助我!在此感谢!

<script type="text/javascript">
location.search.replace(/[?&]wecha_id=([^&#]*)/gi,function($1,$2){
    alert($2);
})
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
function getQueryString(str){
str=str.split(/[?&]/);
var obj={};
for(var i=1;i<str.length;i++){
var m=str[i].split("=");
obj[m[0]]=m[1];
}
return obj;
}
function getInformation(str,key){
return getQueryString(str)[key];
}
window.onload=function(){
alert(getInformation(document.links[0].href,'wecha_id'));
}
</script>
</head>

<body>
<a class="nav" href="http://www/index.php?g=Wap&m=Card&a=get_card&token=cup&wecha_id=o2WR-jovh-Tw9QKbYTzKHQ9NKVYw">会员专享</a>
</body>
</html>
alert("http://www/index.php?g=Wap&m=Index&a=index&token=cup&wecha_id=o2WR-jovh-Tw9QKbYTzKHQ9NKVYw".match(/wecha_id=([^&#]+)/)[1]);

var p=location.href.match(/wecha_id=([^&#]+)/);
if(p && p.length>1){
alert(p[1]);
}
引用 2 楼 zzgzzg00 的回复:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
function getQueryString(str){
str=str.split(/[?&]/);
var obj={};
for(var i=1;i<str.length;i++){
var m=str[i].split("=");
obj[m[0]]=m[1];
}
return obj;
}
function getInformation(str,key){
return getQueryString(str)[key];
}
window.onload=function(){
alert(getInformation(document.links[0].href,'wecha_id'));
}
</script>
</head>

<body>
<a class="nav" href="http://www/index.php?g=Wap&m=Card&a=get_card&token=cup&wecha_id=o2WR-jovh-Tw9QKbYTzKHQ9NKVYw">会员专享</a>
</body>
</html>



以上方法都试过,不行,并且每次去页面还有弹窗提示这个不需要,虽然获取了后面的参数,但是链接部分还是没有解决,忘大侠们继续助我呀!感谢!
你如何区分不同用户呢?如果用户已经注册,那么肯定要和后台做交互,利用js+ajax来取得用户信息 其实wecha_id类似用户的唯一ID,然后塞给链接
var s=location.href;
var m=/wecha_id=([^&]+)/i.exec(s);
if(m)document.write('<a class="nav" href="http://www/index.php?g=Wap&m=Card&a=get_card&token=cup&wecha_id='+m[1]+'">会员专享</a>');
else document.write('wecha_id参数丢失')
location,里面自已组装吧

^_^ 如果您热爱技术、热爱编程,想与更多的朋友一起交流学习,欢迎加入本站官方QQ群:345733473 ^_^