日期:2014-05-16  浏览次数:20437 次

总结JavaScript(Iframe、window.open、window.showModalDi

?做项目的时候,需要用到一个窗口中的子窗口iframe需要取到父窗口的值,弄了好久,都没找到解决方法,幸好看到了这篇博文给了我启发,现转载如下。

看到这篇文章中介绍的子窗口刷新父窗口用的方法是

parentWin.location.reload();?

可是我的不行,我写了个parent.parent.location.reload(); 才行的。

子窗口调用父窗口的中的JS方法,我也不是按照下面这篇文章写的,不过他给了我很大的启发,我是这样写的:

parent.parent.queryPendList();

?

?

来源:http://www.webczw.com/article.asp?id=650

一、Iframe?

?

//&&&&&&&&&&&&&&&&&&&&公共方法开始&&&&&&&&&&&&&&&

//父对象得到子窗口的值

//ObjectID是窗口标识,ContentID是元素ID

function GetValue(ObjectID,ContentID)

{

?????? var IsIE = (navigator.appName == ‘Microsoft Internet Explorer‘)

???????????????????? if(IsIE)

???????????????????? {//如果是IE?????????

??????????????????????????? alert(document.frames(ObjectID).document.getElementById(ContentID).innerHTML);??????????????????????????????

???????????????????? }

???????????????????? else

???????????????????? {//如果是FF

??????????????????????????? ?alert(document.getElementById(ObjectID).contentDocument.getElementById(ContentID).innerHTML);

?????????????????????????????????? //FF下不支持innerText;?下面是解决方法?????????????????????

?????????????????????????????????? //if(document.all){

?????????????????????????????????? //  alert(document.getElementById(‘div1‘).innerText);

?????????????????????????????????? //} else{

?????????????????????????????????? // ?alert(document.getElementById(‘div1‘).textContent);

?????????????????????????????????? //}

???????????????????? }????

}

?

//父对象向子窗口赋值

//ObjectID是窗口标识,ContentID是元素ID

function SetValue(ObjectID,ContentID)

{

var IsIE = (navigator.appName == ‘Microsoft Internet Explorer‘)

????????????? if(IsIE)

????????????? {//如果是IE?????????

???????????????????? document.frames(ObjectID).document.getElementById(ContentID).innerHTML="我是IE下通过父窗口赋值过来的";????????????????????????????

????????????? }

????????????? else

????????????? {//如果是FF

???????????????????? ?document.getElementById(ObjectID).contentDocument.getElementById(ContentID).innerHTML="我是FF下通过父窗口赋值过来的";??????????????????

????????????? }????

}

//&&&&&&&&&&&&&&&&&&&&公共方法结束&&&&&&&&&&&&&&&

?

?

??????1.父窗口对子窗口操作

?

刷新:

??????document.getElementById("IframeID").src=document.getElementById("IframeID").src+"?_="+Math.random();

上面这种方法有时需要对“src