日期:2014-05-17  浏览次数:20465 次

高分求教:iframe标签引入的页面如何获得父页面的参数值,在线等
由于要限制内容页面大小使其能在父页面内出现滚动条,所以使用了iframe标签把内容页面引入到父页面(内容页面原本是用户空间,现写在了一个新建的ASPX页面里)。
问题:内容页面需要根据父页面由链接地址传过来参数显示不同的内容,但是使用iframe标签后发现内容页面无法获得父页面传过来的参数,冥思苦想而不得解,特此求教。C#

举例:http://localhost/default.aspx?cid=shuoming
iframe页面镶嵌在default.aspx页面里,如何获得cid

------解决方案--------------------
<iframe src= "aa.aspx> cid= <%=Request.QueryString[ "shuoming "]%> ">
------解决方案--------------------
比如内容页面放一个hidden(runat=server)
在内容页面加载时 <body onload=aa();>
function aa()
{
var search = window.parent.location.search;
//通过正则或indexOf什么的获取cid值赋到hidden.value
}

在内容页面使用hidden.Value获取父页面参数
------解决方案--------------------
up
------解决方案--------------------
如果要在客户端获取 var shuoming = GetQueryString(winodw.parent.location.href.toString(), "cid "); alert(shuoming); function GetQueryString(url, key) { var reg = new RegExp( ".*? " + key + "=([^&]*)?&.*?$ " + "|.*? " + key + "=([^&]*)?$ "); if(reg.exec(url) == null) return " "; return url.replace(reg, "$1$2 "); }
------解决方案--------------------
直接去父页面的隐藏域里面取

window.parentwindow.document.all.隐藏域id.value

window.parent.document.all.隐藏域id.value
------解决方案--------------------
js中

function GetQueryString(URL, name)
{
var reg = new RegExp( "(^|&) "+ name + "=([^&]*)(&|$) ");
var r = URL.search.substr(1).match(reg);
if(r!=null)
return unescape(r[2]);
return null;
}