JS中window.open和window.opener的使用

一、发现问题
通过A页面通过window.open打开一个B页面,B页面提交过后,希望局部刷新A页面。

 

二、解决问题
A页面
window.open(url, '','width=100,height=100,resizable=no,status=no,menubar=no,scrollbars=no');

B页面
<form action="BAction?method=save">
 <input type="submit" value="提交" />
</form>

BAction
public void save(HttpServletRequest request,HttpServletResponse response)
{
 StduentSave();
 PrintWriter pw = response.getWriter();
 String jsAlert = "<script>alert('操作成功');window.opener.document.getElementById('hint').innerHTML='操作成功';window.close();</script>";
 pw.write(jsAlert);
 pw.flush();
}
B页面提交给了BAction,BAction处理过后关闭了B页面,同时只更新了A页面的提示区。

三、思考过程
除了更新某个区域的html,也可以更新表单元素:window.opener.document.getElementById('hint').value = "";

时间: 2024-07-30 14:50:47

JS中window.open和window.opener的使用的相关文章

JS中的THIS和WINDOW.EVENT.SRCELEMENT详解

 对于js初学着必须理解this和srcElement的应用,这也是面试中经常考到的.下面我们就通过几个示例来详细了解下     我们先看一个简单的例子:    代码如下: <input type="text" onblur="alert(this.value)"/>完全没有问题.   那么什么情况下不可以用? ? 1 2 3 4 5 fuction method() { alert(this.value); } <input type="

JS中的THIS和WINDOW.EVENT.SRCELEMENT详解_javascript技巧

我们先看一个简单的例子: 复制代码 代码如下: <input type="text" onblur="alert(this.value)"/>完全没有问题. 那么什么情况下不可以用? fuction method() { alert(this.value); } <input type="text" onblur="method()"/> 这个就不可以,因为method()是被响应函数调用的函数. 那么

Js中的this和window.event.srcElement

  我们先看一个简单的例子: <input type="text" onblur="alert(this.value)"/>完全没有问题.   那么什么情况下不可以用? fuction method() {    alert(this.value); } <input type="text" onblur="method()"/>这个就不可以,因为method()是被响应函数调用的函数.   那么这种情

JS中Iframe之间传值及子页面与父页面应用_javascript技巧

在js中,我们时常用到用iframe做系统框架,在子页面也,父页面之间的值传递是一个问题,下面是js获取父窗体和子窗体的对象js: 1.在iframe子页面中获取父页面的元素: a>window.parent.document这个是获取父页面document中的对象: b>如果要获取父页面js中的方法:window.parent.xxxx():xxxx()为方法: 2.在父页面中获取iframe子页面中的元素: a> 复制代码 代码如下: var child = document.get

JS中Iframe之间传值的方法_javascript技巧

1.在iframe子页面中获取父页面的元素:     a>window.parent.document这个是获取父页面document中的对象:     b>如果要获取父页面js中的方法:window.parent.xxxx():xxxx()为方法: 2.在父页面中获取iframe子页面中的元素:    a>      var child = document.getElementByIdx_x("mainFrame").contentWindow;//mainFra

js中window.opener方法的跨域问题分析

最近公司网站登陆加入了第三方登陆.可以用QQ直接登陆到我们网站,在login页面A中点QQ登陆时,调用了一个window.open文件打开一个login页窗口B,登陆后callback地址回调成功后,需要关闭当前window.open打开的login小窗口B,再将打开这个小窗口的原窗口页(A)刷新显示正确状态. 这时就用到了这个方法: window.opener.location.reload() 与 window.opener.location.href=window.opener.locat

js中的Window对象

JavaScript分为 ECMAScript,DOM,BOM; DOM 是指文档对象模型,并非一个对象; BOM就是浏览器窗口对象模型,顶级对象是window; window,document都是一个实例对象,他们都属于Object,表示浏览器中打开的窗口 Window对象是客户端javascript最高层对象之一;只要打开浏览器窗口,不管该窗口中是否有打开的网页,当遇到BODY.FRAMESET或FRAME元素时,都会自动建立window对象的实例;另外,该对象的实例也可由window.op

js中window.prompt的问题

问题描述 js中window.prompt的问题 现在是这个地方需要弹框 弹框没问题,保存到第二个文本框也没问题,但是弹框提交之后页面会刷新,然后这两个文半框里的值就没了.怎么防止值没有?或者能禁止刷新? 解决方案 prompt是不会刷新页面的,是不是你调用prompt的按钮时连接或者表单里面的submit按钮,改为普通的 <input type="button" 解决方案二: Jquery easyui prompt模拟window.prompt使JS暂停JS 父窗口向子窗口传

js中的window.onload和jquery中的load区别的讲解

JavaScript 中的以下代码  [javascript] view plaincopyprint? Window.onload = function (){      // 编写代码 }   Window.onload = function (){ // 编写代码 }  等价于   Jquery 代码如下:  [javascript] view plaincopyprint? $(window).load(function (){        // 编写代码  });   $(windo

js中window.showModelDialog()窗口返回值

有两个页面也个 Default1.aspx   另外一个是 Default2.aspx Default1.aspx 有个按钮是用来打开Default2.aspx页面的 按钮的js代码是   代码如下 复制代码 var win = window.showModalDialog("Default2.aspx"); alert(win); Default2.aspx 在页面的onload 事件中加入  window.returnValue = '11111'; 那么当我们关闭 Default