在frame中的子页面调用其他子页面的变量和方法:
1. parent.document.frames("子页面name").子页面方法();
2. parent.子页面name.子页面方法();
3. parent.frames["子页面name"].子页面方法();
例如:
1. parent.document.frames("top").tops();
2. parent.top.tops();
3. parent.frames["top"].tops();
在frame中主页面调用其他子页面的变量和方法:
1.子页面name.子页面方法()
2.子页面name.子页面变量
示例如下:
1、index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<frameset rows="80,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="top.jsp" name="top" scrolling="No" noresize="noresize" id="top" />
<frameset cols="80,*" frameborder="no" border="0" framespacing="0">
<frame src="a.jsp" name="a" scrolling="No" noresize="noresize" id="a" />
<frame src="b.jsp" name="b" id="b" />
</frameset>
</frameset>
<noframes><body>
</body>
</noframes>
</html>
2、top.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>top.jsp</title>
<script type="text/javascript">
function a(){
var aFrame = parent.document.frames("a");
//var aId = aFrame.document.getElementById("aId").innerText;
//alert(aId);
aFrame.tree("111");
}
</script>
</head>
<body bgcolor="blue">
<div id="top" onclick="a()">top页面</div>
</body>
</html>
3、a.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<script type="text/javascript">
function tree(d){
alert(d);
}
</script>
</head>
<body bgcolor="red">
<div id="aId">a页面</div>
</body>
</html>
4、b.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body bgcolor="green">
<div id="b">b页面</div>
</body>
</html>
- 大小: 35.9 KB
分享到:
相关推荐
`MDIFrame::ActivateNext`和`MDIFrame::ActivatePrev`函数可以用来激活下一个或上一个子窗口,而`MDIFrame::MDIActivate`则可以指定激活特定的子窗口。 3. **子窗口的位置调整**:MDI子窗口可以在父窗口内自由移动...
主页面与frame之间的通信可以通过`postMessage`和`message`事件来实现。主页面可以向特定的frame发送消息,frame也可以通过监听`message`事件接收消息。这种方法允许在不同的安全域之间进行跨域通信。 5. 注意事项...
在网页开发中,`frame`和`iframe`是两种用于嵌入子页面的HTML元素,它们可以在一个主页面中展示多个独立的网页内容。本文将深入探讨如何在`frame`和`iframe`之间进行JavaScript(JS)的相互访问,以及相关的知识点。...
本主题将深入探讨如何在iframe子窗口与主容器之间进行互相操作、互相访问以及数据传递。 1. **iframe的基本使用** - iframe标签的定义:`<iframe src="URL" width="width" height="height"></iframe>`,其中src...
总的来说,这个项目结合了C#的GUI开发技巧和工业通信技术,提供了在多窗口应用中实现串口配置及Modbus RTU通信的解决方案。开发者可以通过学习这个案例,掌握如何在C#环境中处理复杂的用户界面交互和通信协议,为...
只有当父页面和子页面具有相同的协议(如HTTP或HTTPS)、主机名和端口时,它们之间才能进行通信。否则,就需要特殊的跨域策略支持。 3. **通信方式** - **DOM操作**:如果父页面和子页面同源,可以使用JavaScript...
在实现跨Frame通信时,通常会用到`window.parent`或`window.frames["frameName"]`这样的语法来引用和操作父框架或特定名称的子框架。`framemenu.js`可能会使用这些方法来改变目标框架的`src`属性,从而加载新的内容...
窗口关系通常涉及到窗口的层次、嵌套、父子关系,以及它们之间的通信和协作。框架(Frameset)则是在Web开发中,HTML的一种特殊结构,用于将浏览器窗口分割成多个独立的区域,每个区域可以加载不同的网页内容。 在...
只有当主页面和iframe加载的页面位于同一个域名下时,才能直接使用`contentWindow`和`parent`对象进行通信。否则,必须使用`window.postMessage()`进行跨域通信,且需要双方都监听`message`事件。 **总结** iframe...
MDI应用程序的核心组件包括MDI主框架窗口(MDIFrame)和MDI子窗口(MDIChild)。MDIFrame是整个应用程序的容器,它负责管理所有MDI子窗口的创建、布局、切换和关闭。而MDIChild窗口则是用户与具体数据交互的地方,每...
1. **MDI架构**:了解MDI的基本概念,包括MDI父窗口(MDIFrame)和MDI子窗口(MDIChild)的结构,以及它们之间的通信方式。 2. **CWinApp和CMDIFrame**:VC++中,CWinApp是应用程序类,负责初始化和管理应用程序,...
为了克服这个问题,ISO 11898 Part 4 提出了时间触发通信的概念,通过预先规划的周期性通信来减少冲突,提高通信的可靠性和效率。 #### 三、关键技术要点 1. **时间触发通信(TTC)**: - **定义**: 基于预设的时间...
框架可以看作是应用程序的主窗口,通常包含多个子视图,并负责管理这些视图的布局和行为。框架还可能包含菜单、工具栏等控件,提供用户与应用程序交互的入口。在许多编程框架中,如Java的JFrame或C++的QMainWindow,...
3. **数据交换**:在子窗口之间传递数据,例如复制和粘贴操作。 4. **状态栏和工具栏支持**:更新主框架窗口的状态栏和工具栏,反映当前活动的子窗口状态。 5. **布局管理**:自动或手动调整子窗口的位置和大小,以...
2. **MDIClient窗口**:MDIClient窗口是MDIFrame和MDIChild之间的桥梁,它处理子窗口的创建、布局、激活和销毁等操作。在Windows API中,MDIClient窗口是一个特殊的子窗口,通过WM_MDICREATE、WM_MDIDESTROY等消息与...
5. **跨框架通信**:使用`parent`和`top`对象可以在框架之间传递信息。例如,从子框架向父框架发送消息: ```javascript parent.postMessage('Hello from child frame', '*'); ``` 6. **事件监听**:通过添加...
需要注意的是,由于同源策略的限制,只有当父窗口和子窗口的源(协议、主机和端口)相同时,它们才能互相访问对方的DOM。如果跨域,这种通信将会受到限制,除非两个页面都明确允许跨域资源共享(CORS)。此外,现代...
在JavaScript中操作frame框架时,需要关注frame之间的相互访问、变量和方法的共享、以及页面元素的获取等方面的问题。 首先,了解frame框架的基本结构是非常重要的。frame框架是由一个主页面(也称为父页面)和若干...
4. **通信与交互**: 主窗体和子窗体之间的通信可以通过多种方式实现,比如使用属性、方法、事件和回调函数。例如,你可以定义子窗体的公开方法,供主窗体调用,或者设置子窗体的公开属性来改变其状态。 5. **显示与...