iframe中子页面如何接收父页面所接受的参数? 50

比如说父页面为a.aspx其中有一个iframe的src为b.aspx然后我a.aspx?id=1接受参数这个参数要如何传递到子页面b.aspx中并接受?... 比如说父页面为a.aspx
其中有一个iframe的src为b.aspx
然后我a.aspx?id=1接受参数
这个参数要如何传递到子页面b.aspx中并接受?
展开
 我来答
aino77
2010-02-20 · TA获得超过920个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:287万
展开全部
虽说,现在的程序很多都是Copy的,但即使是Copy很多时候还是要自己去动手.
有时候问问题前先百度一下可能问题就解决了.
------=华丽的分割线=------
你的问题,其实只是想把父窗口的Url参数拆解了然后传到子窗口去使用.
那么只要处理URL参数就行了.
--------------------------
脚本如下.(百度来的,原文地址:http://mr-a.javaeye.com/blog/542974)
--------------------------
<script type="text/javascript">
<!--
var url = "http://www.baidu.com/?age=25&k=1&site=asp&abc=123;"

//javascript获取指定参数及其对应的值
function getParameter(paraStr, url)
{
var result = "";
//获取URL中全部参数列表数据
var str = "&" + url.split("?")[1];
var paraName = paraStr + "=";
//判断要获取的参数是否存在
if(str.indexOf("&"+paraName)!=-1)
{
//如果要获取的参数到结尾是否还包含“&”
if(str.substring(str.indexOf(paraName),str.length).indexOf("&")!=-1)
{
//得到要获取的参数到结尾的字符串
var TmpStr=str.substring(str.indexOf(paraName),str.length);
//截取从参数开始到最近的“&”出现位置间的字符
result=TmpStr.substr(TmpStr.indexOf(paraName),TmpStr.indexOf("&")-TmpStr.indexOf(paraName));
}
else
{
result=str.substring(str.indexOf(paraName),str.length);
}
}
else
{
result="无此参数";
}
return (result.replace("&",""));
}

//调用方法:var 变量名 = getParameter("要获取的参数名", URL地址)
var r = getParameter("age",url);

//测试输出,结果是:site=popasp
alert(r);
//根据得到的结果可以使用
var pName = r.split("=")[0]; //获取参数名
var pValue = r.split("=")[1]; //获取参数值

//测试输出:
alert("参数名:" + pName + "\n\n" + "参数值:" + pValue);

//其他实际应用:
//可以根据需要,配合以下方法实现自己要实现的功能;
//var hostname = location.hostname; //获取当前域名(不包含http://)
//var localurl = location.href; //获取当前完整的URL地址信息(包含http://,域名,路径,具体文件和全部传递参数)
//var referurl = document.referrer; //获取上一页完整的URL信息(包含http://,域名,路径,具体文件和全部传递参数)

//-->
</script>
非典型天秤座
2010-02-20 · TA获得超过1395个赞
知道大有可为答主
回答量:850
采纳率:0%
帮助的人:1353万
展开全部
<iframe src='b.aspx?param=<%=Request.QueryString["id"]%>'></iframe>
<%=Request.QueryString["id"]%>就是a.aspx?id=1中的1,然后在b页面获取param参数的值就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
odime
2010-02-20 · 超过60用户采纳过TA的回答
知道答主
回答量:150
采纳率:0%
帮助的人:201万
展开全部
你可以直接将这个参数传到b.aspx;用js去取a.aspx的iframe,然后修改它的src
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
典颐Rv
推荐于2016-07-26 · TA获得超过2.2万个赞
知道大有可为答主
回答量:2615
采纳率:31%
帮助的人:381万
展开全部
//javascript获取指定参数及其对应的值
function getParameter(paraStr, url)
{
var result = "";
//获取URL中全部参数列表数据
var str = "&" + url.split("?")[1];
var paraName = paraStr + "=";
//判断要获取的参数是否存在
if(str.indexOf("&"+paraName)!=-1)
{
//如果要获取的参数到结尾是否还包含“&”
if(str.substring(str.indexOf(paraName),str.length).indexOf("&")!=-1)
{
//得到要获取的参数到结尾的字符串
var TmpStr=str.substring(str.indexOf(paraName),str.length);
//截取从参数开始到最近的“&”出现位置间的字符
result=TmpStr.substr(TmpStr.indexOf(paraName),TmpStr.indexOf("&")-TmpStr.indexOf(paraName));
}
else
{
result=str.substring(str.indexOf(paraName),str.length);
}
}
else
{
result="无此参数";
}
return (result.replace("&",""));
}

//调用方法:var 变量名 = getParameter("要获取的参数名", URL地址)
var r = getParameter("age",url);

//测试输出,结果是:site=popasp
alert(r);
//根据得到的结果可以使用
var pName = r.split("=")[0]; //获取参数名
var pValue = r.split("=")[1]; //获取参数值

//测试输出:
alert("参数名:" + pName + "\n\n" + "参数值:" + pValue);

//其他实际应用:
//可以根据需要,配合以下方法实现自己要实现的功能;
//var hostname = location.hostname; //获取当前域名(不包含http://)
//var localurl = location.href; //获取当前完整的URL地址信息(包含http://,域名,路径,具体文件和全部传递参数)
//var referurl = document.referrer; //获取上一页完整的URL信息(包含http://,域名,路径,具体文件和全部传递参数)

//-->
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hjingquan2003
2010-02-20 · 超过90用户采纳过TA的回答
知道小有建树答主
回答量:283
采纳率:0%
帮助的人:247万
展开全部
在a.aspx中放这样的一段代码:
<script type="text/javascript">
function GetRequestParaValue(strName) {
var strHref = document.location.search;
var intPos = strHref.indexOf("?");
var strRight = strHref.substr(intPos + 1);
var arrTmp = strRight.split("&");
for (var i = 0; i < arrTmp.length; i++) {
var arrTemp = arrTmp[i].split("=");
if (arrTemp[0].toUpperCase() == strName.toUpperCase())
return arrTemp[1];
}
return "";
}
</script>

然后在b.aspx中用下边的脚本获取:
<script type="text/javascript">
//这里的id可以是任意的参数
var isPara = window.parent.GetRequestParaValue("id");
//现在isPara就是你想要的了,用alert输出看看
alert(isPara);
//如果你想要在服务器端使用,可以定义一个隐藏域,将得到的值放进去就ok了
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式