frame页面是内嵌到父页面的,当点击iframe页面的服务器控件时,默认只刷新iframe页面,父页面是不会刷新的。若想刷新父页面,可以使用js来实现,如 1 parentlocationreload(); 这种方法会重新加载整个页面。但如果要在原页面的基础上传递参数
iframe 父页面调用子页面方法:
parentframes["frameName"]windowfunctionName();
frameName:IFrame的ID;
funtionName:子页面中JS方法名;
var obj = parentframes["frameName"]window;
在父页面访问子页面中某个控件如:objdocumentgetElementByIdx_x('clientID')
子页面刷新父页面:topwindowlocationreplace(Url);
你的子页面是一个iframe吗?如果是这样,你可以往iframe的url传入一个参数如btnid:
>
我还是写个简单的例子吧:
父页面的js:
$("btn")click(function(){$("#child-frame")src=">});
子页面的js:
var id = locationsearchsubstr(1);首先session并不是iframe里面有值,父页面没有值!它的值是存在服务器上的!父页面不显示值是因为你没有刷新父页面,如果你想让父页面只显示可以用代码控制刷新父页面!在后台中登录成功后代码控制刷新父页面
outprint("<script language='javascript'>toplocation='父页面地址'</script>")
你需要在页面加载完成时(而不是刚加载时)执行alert
如果像你这么写
在alert执行的时候
<iframe src="childhtml" id="myframe">
</iframe>
还没有加载
所以找不到这个元素
当然就是null了
下面给你个jquery的例子,以供参考
$(document)ready(function(){alert(documentgetElementById("myframe")contentWindowdocumentgetElementById(" pg"));
})
一般需要两个页面来实现,比如使用frame或者iframe,假设页面a中嵌有iframe,页面为b,你要实现iframe中的页面刷新后滚动条回到原来的位置,可以这样干:
1、在a页面中,新建个变量用于记录b页面的滚动条位置
var hScrollBarPos=0;
2、在b中写函数
<script type="text/javascript">
//向父页a传递滚动条位置,用于刷新时能够回复到原来位置
function sendScrollPos(){
parenthScrollBarPos=documentbodyscrollTop;
以上就是关于iframe打开的子页面在点击按钮后怎么刷新父页面全部的内容,包括:iframe打开的子页面在点击按钮后怎么刷新父页面、iframe 父页面调用子页面方法、怎么用js在子页面中获取到父页面的元素的id等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)