新浦京娱乐场官网-301net-新浦京娱乐www.301net
做最好的网站

如果你在主窗口打开了一个页面

a.html:

<form name="form1" method="post" action="">

<a href="javascript:void(null)" class="add" onClick="open('b.html','','resizable=1,scrollbars=1,status=no,toolbar=no,menu=no,width=500,height=400,left=150,top=50')">增加</a>

<input type="text" name="text1">

</form>

b.html:

<script language="javascript" type="text/javascript">

function returnValue()

{

window.opener.document.all.text1.value=document.getElementById("returnText").value;

window.close();

}

</script>

  <input type="button" name="Submit" value="提交" onclick="returnValue();">

  <input name="returnText" type="text" id="returnText">

</p>

补充:window.opener 的用法

window.opener 的用法在一般的用法中,只是用来化解关闭窗口时不提醒弹出窗口, 而对它越来越深层的打听一般很少。其 实 window.opener是指调用window.open方法的窗口。

在职业中首要是用来消除一部分提交的。这种跨页操作对专门的学问是拾分有赞助的。

设若你在主窗口开荒了叁个页面,而且期望主窗口刷新就用那一个,张开页面包车型大巴window.opener就也正是

主窗口的window。

主窗口的基础代谢你能够用

window.opener.location.reload();

举个例子您用编造的目录:如struts的*.do会提醒您重试

您能够改成这么 window.opener.yourformname.submit()

就好了

2〉

在选用中有如此一个状态,

在A窗口中开发B窗口,在B窗口中操作完之后关闭B窗口,同有时候自动刷新A窗口

function closeWin(){

hasClosed = true;

window.opener.location="javascript:reloadPage();";

window.close();

}

function window.onbeforeunload(){

if(!hasClosed){

window.opener.location="javascript:reloadPage();";

}

}

</script>

地点的代码在关门B窗口的时候会唤醒错误,说缺乏Object,正确的代码如下:

function closeWin(){

hasClosed = true;

window.opener.location="javascript:reloadPage();";

window.opener=null;

window.close();

}

function window.onbeforeunload(){

if(!hasClosed){//如果已经执行了closeWin方法,则不执行本方法

window.opener.location="javascript:reloadPage();";

}

}

</script>

reloadPage方法如下:

function reloadPage() {

history.go(0);

document.execCommand("refresh")

document.location = document.location;

document.location.reload();

}

PS:由于供给帮助正常关闭和威迫关闭窗口时能捕捉到事件,用了全局变量hasClosed

==============================================

补给,在父窗口是frame的时候在刷新父窗口的时候会冒出难点:

The page cannot be refreshed without resending the information.

后修改如下:

window.opener.parent.document.frames.item('mainFrame').location.href = window.opener.location.href;

无需实行自带的reload()方法,注意,不要再画蛇添足加上这一句:

window.opener.parent.document.frames.item('mainFrame').location.reload();

========================================================================================

最终,为了同期扶助刷新普通父窗口和frame父窗口,代码如下:

function closeWin() {

hasClosed = true;

<%if(null != frame){%>

window.opener.parent.document.frames.item('mainFrame').location.href = window.opener.location.href;

<%}else{%>

window.opener.location = "javascript:reloadPage();";

<%}%>

//window.opener.top.mainFrame.location="javascript:reloadPage();";

//self.opener.frames.mainFrame.location.reload(true);

window.opener = null;

window.close();

}

function window.onbeforeunload(){

if (!hasClosed) {

<%if(null != frame){%>

window.opener.parent.document.frames.item('mainFrame').location.href = window.opener.location.href;

<%}else{%>

window.opener.location = "javascript:reloadPage();";

<%}%>

window.opener = null;

}

}

window.opener 的用法

window.opener 再次回到的是成立当前窗口的拾贰分窗口的援引,举例点击了a.htm上的两个链接而开拓了b.htm,然后大家筹划在b.htm上输入三个值然后予以a.htm上的贰个id为“name”的textbox中,即可写为:

window.opener.document.getElementById("name").value = "输入的数额";

对于javascript中的window.opener未有很好的知情。

怎么框架中无法利用,弹出窗口的父窗口不能够在框架之中的有些页面吗?那怎么通过弹出窗口操作框架中的父窗口呢?

opener.parent.frames['frameName'].document.all.input1.value 千钧一发这些:)

frame框架里的页面要改别的同框架下的页面或父框架的页面就用parent

window.opener引用的是window.open展开的页面包车型地铁父页面。

window.frames对象能够引用iframe里的页面,也得以援引frameset里的页面.

能够这样

window.frames[0].document.getElementById('xx');

能够如此

window.frames[0].document.body.innerHTML;

frm = window.parent.window.frames['uploadFrame'];

frmDocument = frm.document;

frm.sb(3); //sb 是uploadFrame页面里的一个函数

对于firefox

设若你遇上报错:parent.document.frames has no properties

换为如下代码就能够了,这些代码IE,ff包容. frm = window.parent.window.frames['uploadFrame'];其实 frames 集结并非挂在 document 而是挂在 window 对象下.

当心那样修改frame里的页面有限定,正是必须是同域下的,不然不恐怕访谈

如若是同一域下,不过子域名分化,那么涉及到的js,html文件都丰裕一句。

document.domain = xxx.com [此处填写您的域名]document.getElementById('iframeid').contentWindow.document.getElementById('someelementid');

问:

在父窗口window.open()一个子窗口。并定义一个变量i。

在子窗口输入二个值j然后window.opener.i=j;

那般能传过去。但自身在子窗口最后加了个window.close();就不能传值了。

请问是或不是有艺术化解那些标题。使本人传递值之后再关闭子窗口。

代码如下:

父窗口:parent.jsp

<script>

var i;

window.open('<%=contextPath%>/usermanage/newscontrol/cd.jsp);

</script>

<input type="button" onclick="alert(i)">

子窗口:cd.jsp

<script>

function subm(){

window.opener.i=5;

window.close();

}

</script>

<input type="button" onclick="subm()">

最好答案

您能够在父窗口放多个

<input id="fromChild" type="hidden" />

<input type="button"

onclick="alert(document.getElementById('fromChild').value)">

在子窗口中:

function subm(){

window.opener.document.getElementById('fromChild').value=5;

window.close();

}

这么既可

<head>

<script language=javascript>
function windowclose()

{ window.opener=null;

window.close();

}

</script>

</head>

<body>

<input id="Button1" type="button" value="button" onclick="windowclose()" />
</body>

如上这篇js弹出窗口重临值的粗略实例正是小编分享给大家的全体内容了,希望能给我们三个参阅,也盼望大家多多辅助脚本之家。

你或者感兴趣的篇章:

  • JS模态窗口再次回到值包容难点的两全化解办法
  • js获取会话框prompt的再次来到值的方法
  • javascript中宣示函数的点子及调用函数的重临值
  • js获取ajax重返值代码
  • javascript少儿编制程序关于再次回到值的函数内容

本文由新浦京娱乐场官网-301net-新浦京娱乐www.301net发布于301net网站建设,转载请注明出处:如果你在主窗口打开了一个页面

您可能还会对下面的文章感兴趣: