`

用window.open()打开子页面传值问题

阅读更多

1、通过window对象的open()方法,open()方法将会产生一个新的window窗口对象 //IE7里不支持

   其用法为:
            window.open(URL,windowName,parameters);
            URL: 描述要打开的窗口的URL地址,如何为空则不打开任何网页;
            windowName:描述被打开的窗口的民称,可以使用'_top'、'_blank'等内建名称,这里的名称跟<a href="..." target="...">里的target属性是一样的。
            parameters:描述被打开的窗口的参数值,或者说是样貌,其包括窗口的各个属性值,及要传入的参数值。
        例如:
            打开一个 400 x 100 的干净的窗口:             open('','_blank','width=400,height=100,menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes')
        参数说明如下:
            top=# 窗口顶部离开屏幕顶部的像素数
            left=# 窗口左端离开屏幕左端的像素数
            width=# 窗口的宽度
            height=# 窗口的高度
            menubar=... 窗口有没有菜单,取值yes或no
            toolbar=... 窗口有没有工具条,取值yes或no
            location=... 窗口有没有地址栏,取值yes或no
            directories=... 窗口有没有连接区,取值yes或no
            scrollbars=... 窗口有没有滚动条,取值yes或no
            status=... 窗口有没有状态栏,取值yes或no
            resizable=... 窗口给不给调整大小,取值yes或no

 

    说名:在子页面可以通过opener获取和设置通过window.open()打开此页面的父页面的值       

                如下为给父窗体的控件设值:
                     opener.document.myform.district.value = document.myform.district.value;
                     opener.document.myform.street.value = document.myform.street.value;

 

一、father.jsp页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
	<head>
		<title>Insert title here</title>
		<script type="text/javascript">
			function openwindow(){
		    	window.open('moShi.jsp','_blank','height=400,width=400,top=100,left=200,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');
			}
    	</script>
	</head>
	<body>
		<form action="" method="post" name="myform">
			<table width="533" height="133" border="1" bgcolor="#ffc8c8" align="center" cellpadding="0" cellspacing="0">
				<tr>
					<th colspan="5">简易购物车</th>
				</tr>
				<tr align="center">
					<td width="92">商品名称</td>
					<td width="100">数量(件)</td>
					<td width="110">单价(美元)</td>
					<td width="101">运费(美元)</td>
					<td width="130">合计</td>
				</tr>
				<tr align="center">
					<td>跑跑道具</td>
					<td>5</td>
					<td>12.5</td>
					<td>10</td>
					<td>72.5美元</td>
				</tr>
				<tr align="left">
					<td colspan="5">
						<a href="javascript:openwindow()">填写你的邮寄地址</a>
						区:    <input type="text" size="10" name="district" disabled /> &nbsp;
						街道:<input type="text" size="10" name="street" disabled />
					</td>
				</tr>
			</table>
		</form>
	</body>
</html>

 

 二、moShi.jsp页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
  <head> 
    <script type="text/javascript">
	   function closewindow(){
	   		//opener可以获取、设置通过window.open()打开此页面的父页面的值
	   		opener.document.myform.district.value = document.myform.district.value;
	   		opener.document.myform.street.value = document.myform.street.value;
			window.close();
		}
    </script>
  </head>
  
  <body>
    <form action="" name="myform" method="post">
		<table width="290" height="206" align="center" border="0"
			bgcolor="#ffc8c8" cellpadding="0" cellspacing="0">
			<tr>
				<td colspan="2" align="center">
					<span class="style1">送货地址确认</span>
				</td>
			</tr>
			<tr>
				<td width="124" align="right" valign="middle">
					省份:
				</td>
				<td width="166">
					<select name="province">
						<option value="北京市">北京市</option>
						<option value="广东省">广东省</option>
						<option value="河北省">河北省</option>
						<option value="四川省">四川省</option>
						<option value="江苏省">江苏省</option>
					</select>
				</td>
			</tr>
			<tr>
				<td align="right" valign="middle">城市:</td>
				<td>
					<select name="city">
						<option value="北京市" selected>北京市</option>
						<option value="上海市">上海市</option>
						<option value="广州市">广州市</option>
						<option value="邯郸市">邯郸市</option>
						<option value="峨眉山市">峨眉山市</option>
					</select>
				</td>
			</tr>
			<tr>
				<td align="right" valign="middle">区:</td>
				<td>
					<select name="district">
						<option value="西城区">西城区</option>
						<option value="海淀区">海淀区</option>
						<option value="白云区">白云区</option>
						<option value="解放区">解放区</option>
						<option value="进城区">进城区</option>
					</select>
				</td>
			</tr>
			<tr>
				<td align="right" valign="middle">街道:</td>
				<td><input name="street" type="text" size="20"></td>
			</tr>
			<tr>
				<td align="right" valign="middle">门牌号:</td>
				<td><input name="number" type="text" size="20"></td>
			</tr>
			<tr>
				<td colspan="2" align="center">
					<input name="btn" type="button" value="确认" onclick="closewindow()">
				</td>
			</tr>
		</table>
	</form>
  </body>
</html>

 

分享到:
评论

相关推荐

    window.open父子窗口传值问题

    当我们谈论“window.open父子窗口传值问题”,我们指的是在父窗口通过`window.open`创建了一个子窗口,并需要在两者之间进行数据通信的情况。 首先,让我们了解一下`window.open`的基本语法: ```javascript var ...

    js中用open方式打开新窗口向父窗口传值

    在JavaScript中,使用`window.open()`方法可以打开一个新的浏览器窗口,这个方法可以实现子窗口向父窗口传值的操作。下面我们来详细解释这个过程。 首先,让我们回顾一下`window.open()`方法的基本用法。`window....

    JS父页面与子页面相互传值方法

    当子页面是通过`window.open()`函数打开时,我们可以使用`window.opener`属性来访问父页面的DOM元素。以下是一个简单的例子: 1. 父页面代码: ```html &lt;!DOCTYPE html&gt; 父页面 function openChildPage() { ...

    easyUi弹出window窗口传值与调用父页面的方法,子页面给父页面赋值

    2. 在父页面中,通过`$.dialog`或`$.window`方法打开子页面,可以设置一些参数,如宽度、高度、内容URL等。 例如: ```javascript $.window({ title: '子页面', width: 500, height: 400, href: 'subPage.html'...

    window.showModalDialog以及window.open用法简介

    在网页开发中,有时我们需要打开新的窗口或者弹出对话框来...而`window.open`更适合于打开新页面,用户可以在新窗口和原窗口之间自由切换。在处理父子窗口间的通信时,两者都可以利用`window.opener`属性实现数据交换。

    子窗口传值到父窗口.rar

    - 父窗口中,打开子窗口时保存一个引用,如`var childWindow = window.open(...)` - 然后在适当的时候,通过`childWindow`访问子窗口的变量或方法。 2. **使用window.postMessage API**: - HTML5引入了`window....

    layer弹窗:top.layer弹窗到父页面跨域解决办法

    在IT行业中,跨域问题是一个常见的挑战,尤其是在网页开发中,比如当我们在使用layer弹窗插件时,可能会遇到从子页面弹出一个窗口到父页面的情况。标题和描述所提及的是一个关于如何解决layer弹窗在跨域环境下的问题...

    javascript 父窗口、子窗口传值问题

    例如,一个网页中的超链接可以使用`window.open()`方法打开一个新的窗口,新窗口就是子窗口,而原来的窗口则是父窗口。 ### 父窗口向子窗口传值 1. **通过`window.open()`方法传参**:在创建子窗口时,可以通过URL...

    javascript 两个页面之间传值

    本篇文章将深入探讨如何使用`window.open()`方法实现这一目标。`window.open()`是JavaScript中的一个内置函数,用于打开新的浏览器窗口或者标签页,并可以指定新窗口的URL、尺寸以及窗口特性。 首先,我们来了解`...

    ajax\HTML 页面与页面之间传值

    6. **使用Web Storage事件监听**:当一个页面修改了SessionStorage或LocalStorage时,其他已打开的同源页面会触发'storage'事件,可以借此实现页面间的实时通信。 总结,HTML页面间传递数据有多种途径,包括URL参数...

    Asp.net中doPostBack介绍和弹出窗体与父窗体之间的传值

    在ASP.NET中,弹出窗体可以使用`window.open`JavaScript函数实现,而传值则可以通过以下几种方式: 1. **URL参数**:在打开弹出窗口时,可以在URL中添加查询字符串来传递数据。弹出窗口加载后,可以通过JavaScript...

    Layui实现父子页面之间值传递.zip

    // 使用 layer.open() 创建子页面 layer.open({ type: 2, // 2代表HTML页面 content: 'child.html', // 子页面URL success: function (layero, index) { var win = window['layui-layer-iframe' + index]; // ...

    javascript页面之间传值

    `window.open()`可以打开一个新的浏览器窗口或标签页,其返回值是一个窗口对象,我们可以用这个对象来访问或修改子窗口的属性。例如,如果在父窗口中创建了一个名为`childWin`的子窗口,我们可以在子窗口中设置一个...

    layUI使用layer.open,在content打开数据表格,获取值并返回的方法

    接下来,我们需要实现这个按钮的点击事件,使用layer.open打开新窗口: ```javascript simulatePack: function() { var checkStatus = table.checkStatus('box') // 获取表格选中状态 , data = checkStatus.data;...

    js 页面 弹窗 传值 接值

    另外,也可以在打开新窗口或标签时使用`window.open()`方法传递数据,并在新页面中获取。 总结,JavaScript的弹窗功能主要提供信息展示和简单用户交互。对于更复杂的页面间数据传递,我们需要借助其他技术,如URL...

    javascript父子页面传参

    - **`window.open()`函数**:在父页面中,可以使用`window.open(url, name, features, replace)`,其中`url`可以包含传递的参数,而子页面可以通过上述方式解析。 2. **子页面到父页面传参**: - **`window....

    弹出窗口互相传值范例

    例如,`window.open("cwin.aspx?value=123")`,然后在`cwin.aspx`中解析查询字符串获取值。 2. **Session存储**:可以将值存储在服务器端的Session对象中,两个窗口共享同一个Session,通过Session ID来访问。例如...

    在JS中。页面间传值

    在A页面,你可以使用`window.open()`函数打开B页面,并在URL后面添加参数。例如: ```javascript let url = "B.html?value=" + encodeURIComponent(value); window.open(url); ``` 在B页面,你可以通过`window....

    页面间传值

    在这个场景下,我们需要将数据从一个页面传递到另一个页面,以便在新打开的窗口中展示或处理这些数据。以下是对这个主题的详细解释,以及如何利用HTML、CSS、jQuery和JavaScript实现这一功能。 1. URL参数传递: ...

Global site tag (gtag.js) - Google Analytics