iframe如何获得父页面的值
今天在项目中遇到,需要把父页面的值传到iframe页面,搞了半天终于搞定,经验和大家分享。
1.主页面parentofiframe.html
<html>
<head>
</head>
<body>
<form>
<iframe frameborder=0 id=newsbody name=newsbody2 scrolling=no src="iframe.htm" ></iframe>
<input type="text" name="test1" id="test1">
</form>
</body>
</html>
2.iframe页面iframe.htm
<html>
<head>
<script language="javascript">
function Show()
{
var t=parent.document.all.test1.value;
document.all.test2.innerText=t;
}
</script>
</head>
<body>
<input type="button" value="Test" name="btntest" οnclick="Show();">
<input type="text" value="0" name="test2" id="test2">
</body>
</html>
注意:1.这段代码是可以执行的。如果主页面是服务器端控件的话,那么parent.document.all.test1.value要换成parent.document.getElementbyID("控件名").value。
此处控件名为客户端的名称。可以通过执行,从页面源文件中得到;也可以通过在cs页面,[控件].ClientID来设置,这样就可以直接运行上面代码
2.如果有和我一样不是很聪明的话,直接在cs页面直接Response.Write(“……”),拼出html代码。
3.如果iframe页面中要改变的值又是一个iframe的src的话,使用irame名.location赋值即可。