HTML页面地址栏参数传递与获取

如何实现HTML页面地址栏参数传递与获取
我们知道,在服务器端asp程序可以接受html页面上的form传来的参数,那么,可不可以传递参数给html页面呢,也就是说在html后面加问号?答案是可以。
  下面是javascript的一种实现方法, 这个函数是通过window.location.href中的分割符获得各个参数。
  有了这个函数,就可以在页面之间传递参数了。
以下是引用片段:
  /*
  *函数功能:从href获得参数
  *sHref: http://www.yesky.com/arg.htm?arg1=d&arg2=re
  *sArgName:arg1, arg2
  *return: the value of arg. d, re
  */
  function GetArgsFromHref(sHref, sArgName)
  {
  var args = sHref.split("?");
  var retval = "";
  if(args[0] == sHref) /*参数为空*/
  {
  return retval; /*无需做任何处理*/
  }
  var str = args[1];
  args = str.split("&");
  for(var i = 0; i < args.length; i ++)
  {
  str = args[i];
  var arg = str.split("=");
  if(arg.length <= 1) continue;
  if(arg[0] == sArgName) retval = arg[1];
  }
  return retval;
  }
实现html页面的参数传递
我们知道,在服务器端asp程序可以接受html页面上的form传来的参数。
那么,可不可以传递参数给html页面呢。也就是说在html后面加问号?答案是可以。
下面是javascrīpt的一种实现方法, 这个函数是通过window.location.href中的分割符获得各个参数。
有了这个函数,就可以在页面之间传递参数了。
/*
*函数功能:从href获得参数
*sHref: http://www.artfh.com/arg.htm?arg1=d&arg2=re
*sArgName:arg1, arg2
*return: the value of arg. d, re
*/
function GetArgsFromHref(sHref, sArgName)
{
var args = sHref.split("?");
var retval = "";

if(args[0] == sHref) /*参数为空*/
{
return retval; /*无需做任何处理*/
}
var str = args[1];
args = str.split("&");
for(var i = 0; i < args.length; i ++)
{
str = args[i];
var arg = str.split("=");
if(arg.length <= 1) continue;
if(arg[0] == sArgName) retval = arg[1];
}
return retval;
}

html地址传递参数进行其他事情.
<scrīpt>
/* 用途: 接收地直栏参数 取id=1 根据ID的值 */
urlinfo=window.location.href; //获取当前页面的url
len=urlinfo.length;//获取url的长度
offset=urlinfo.indexOf("?");//设置参数字符串开始的位置
newsidinfo=urlinfo.substr(offset,len)//取出参数字符串 这里会获得类似“id=1”这样的字符串
newsids=newsidinfo.split("=");//对获得的参数字符串按照“=”进行分割
newsid=newsids[1];//得到参数值
switch (newsid*1) {
case 1 :
document.getElementById("sdcard1").style.display="block"
break ;
case 2 :
document.getElementById("sdcard2").style.display="block"
break ;
case 3 :
document.getElementById("sdcard3").style.display="block"
break ;
case 4 :
document.getElementById("sdcard4").style.display="block"
break ;
case 5 :
document.getElementById("sdcard5").style.display="block"
break ;
default :
document.getElementById("sdcard1").style.display="block"
break ;
}
</scrīpt>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值