子窗口给父窗口赋值实现思路及案例演示
学习JavaScript实现父窗口与子窗互:数据传递与处理
在网页开发中,我们经常需要实现父窗口与弹出的子窗口之间的交互。今天,我们将通过JavaScript来实现这一功能。如果你对这方面感兴趣,那么这篇文章将为你提供详细的步骤和代码示例,希望对你有所帮助。
假设我们有两个ASPX页面:PageA.aspx和PageB.aspx。我们的目标是,从PageA打开一个子窗口(PageB),在PageB中处理一些数据后,将结果返回到PageA并显示在文本框内。
步骤一:创建父窗口(PageA)
在PageA的头部(
)节点内,我们编写JavaScript脚本,包含两个方法:一个用于打开子窗口,另一个用于设置文本框的值。```html
function popUp(url) {
var objSubWin = window.open(url, "Popup", "toolbar=no,scrollbars=no,location=no,statusbar=no,menubar=no,resizable=0,width=300,height=80");
objSubWin.focus();
}
function SetValue(val) {
var amount = document.getElementById('<%= TextBoxAmount.ClientID %>');
amount.value = val;
}
```
在Body节点内,我们添加一个文本框和一个按钮,用于调用打开子窗口的方法。
```html
Amount:
```
步骤二:创建子窗口(PageB)
在PageB的头部(
)节点内,我们编写JavaScript脚本,包含两个函数:一个用于验证文本框只能输入数字,另一个用于计算并传递结果到父窗口。```html
function isNumeric(keyCode) {
return ((keyCode >= 48 && keyCode <= 57) || keyCode == 8);
}
function calc() {
if (window.opener != null && !window.opener.closed) {
var qty = document.getElementById('<%= TextBoxqty.ClientID %>');
var price = document.getElementById('<%= TextBoxPrice.ClientID %>');
window.opener.SetValue(parseInt(qty.value) parseInt(price)); // 这里假设计算是数量和价格的乘积
}
}
```
在Body节点内,我们添加两个文本框和一个按钮,并绑定相关的事件处理函数。
```html
数量
编程语言
- 子窗口给父窗口赋值实现思路及案例演示
- 实例讲解PHP面向对象之多态
- Django+Vue.js搭建前后端分离项目的示例
- bootstrap警告框示例代码分享
- 小程序图片剪裁加旋转的示例代码
- 基于JavaScript代码实现pc与手机之间的跳转
- php 静态属性和静态方法区别详解
- MySql存储过程学习知识小结
- 解析php类的注册与自动加载
- 微信小程序项目总结之点赞 删除列表 分享功能
- JS中Promise函数then的奥秘探究
- yii2实现分页,带搜索的分页功能示例
- asp.net水晶报表参数字段在代码中赋值的方法
- Laravel框架实现利用中间件进行操作日志记录功能
- ASP.NET MVC3的伪静态实现代码
- Node.js利用debug模块打印出调试日志的方法