如何实现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>
我们知道,在服务器端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>