`

模式窗口的相关知识

阅读更多
下面是showModalDialog/showModelessDialog使用例子,父窗口向子窗口传递值,子窗口设置父窗口的值,子窗口关闭的时候返回值到父窗口.关闭刷新父窗口,希望对象我这样的WEB开发的菜鸟有所帮助.

(一)showModalDialog使用例子,父窗口向子窗口传递值,子窗口设置父窗口的值,子窗口关闭的时候返回值到父窗口.

farther.html
---------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">
<!--
function openChild(){

var k = window.showModalDialog("child.html",window,"dialogWidth:335px;status:no;dialogHeight:300px");
if(k != null)
document.getElementById("txt11").value = k;
}
//-->
</script>
</HEAD>

<BODY>
<br>传递到父窗口的值:<input id="txt9" type="text" value="3333333333333"><br>
返回的值:<input id="txt11" type="text"><br>
子窗口设置的值:<input id="txt10" type="text"><br>


<input type ="button" value="openChild" onclick="openChild()">
</BODY>
</HTML>
---------------------------------------------------------------
child.html
--------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">

</HEAD>

<BODY>
<br>父窗口传递来的值:<input id="txt0" type="text"><br>
输入要设置父窗口的值:<input id="txt1" type="text"><input type ="button" value="设置父窗口的值" onclick="setFather()"><br>
输入返回的值:<input id="txt2" type="text"><input type ="button" value="关闭切返回值" onclick="retrunValue()">
<input type ="button" value="关闭刷新父窗口" onclick="">

</BODY>
</HTML>

<script language=javascript>
<!--
var k=window.dialogArguments;
//获得父窗口传递来的值
if(k!=null)
{
document.getElementById("txt0").value = k.document.getElementById("txt9").value;
}
//设置父窗口的值
function setFather()
{
k.document.getElementById("txt10").value = document.getElementById("txt1").value
}
//设置返回到父窗口的值
function retrunValue()
{
var s = document.getElementById("txt2").value;
window.returnValue=s;
window.close();
}
//-->
</script>

----------------------------
说明:
由于showModalDialog缓存严重,下面是在子窗口取消客户端缓存的设置.也可以在服务器端取消缓存,参考:
http://adandelion.cnblogs.com/articles/252137.html
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">
------------------------------------------------------------------------------------------------------------------------
(二)下面是关闭刷新父窗口的例子

farther.html
---------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">
<!--
function openChild()
{

var k = window.showModalDialog("child.html",window,"dialogWidth:335px;status:no;dialogHeight:300px");
if(k == 1)//判断是否刷新
{
  alert('刷新');
  window.location.reload();
}
}
//-->
</script>
</HEAD>

<BODY>
<br>传递到父窗口的值:<input id="txt9" type="text" value="3333333333333"><br>
<input type ="button" value="openChild" onclick="openChild()">
</BODY>
</HTML>
----------------------------------------------------
child.html
--------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">

</HEAD>

<BODY>
<br>父窗口传递来的值:<input id="txt0" type="text"><br>

<input type ="button" value="关闭刷新父窗口" onclick="winClose(1)">
<input type ="button" value="关闭不刷新父窗口" onclick="winClose(0)">

</BODY>
</HTML>

<script language=javascript>
<!--
var k=window.dialogArguments;
//获得父窗口传递来的值
if(k!=null)
{
document.getElementById("txt0").value = k.document.getElementById("txt9").value;
}

//关闭窗口返回是否刷新的参数.
function winClose(isRefrash)
{

window.returnValue=isRefrash;
window.close();
}
//-->
</script>

--------------------------
说明
1.下面是取消客户端缓存的:
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">
也可以在服务器端取消缓存,参考:
http://adandelion.cnblogs.com/articles/252137.html

2.向父窗口传递阐述在ASP.NET中也可以是用aaa.aspx?id=1的方式传递.

3.不刷新父窗口的话在父窗口中直接这样一来设置可以.
<script>
window.showModalDialog("child.html",window,"dialogWidth:335px;status:no;dialogHeight:300px");
</script>
4.在子窗口中若要提交页面的话要加入:,这样就不会打开新窗口了.
<head>
<base target="_self">
</HEAD>

本文参考了:http://dev.csdn.net/develop/article/15/15113.shtm ,里面有showModalDialog/showModelessDialog的详细使用说明
分享到:
评论

相关推荐

    模式窗口操作父窗口

    在探讨“模式窗口操作父窗口”这一主题时,我们首先需要理解模式窗口(Modal Window)的概念及其在用户界面设计中的作用。模式窗口是一种常见的UI组件,用于在当前应用的主窗口上显示一个对话框或子窗口,这个子窗口...

    jquery 弹出模式窗口

    **jQuery弹出模式窗口** 在Web开发中,有时我们需要在用户与页面交互时显示一个临时的对话框,例如用户登录、确认操作或显示警告信息。jQuery插件提供了一种便捷的方式来实现这种弹出模式窗口,使得用户体验更加...

    DirectDraw 窗口模式的INSTANCE

    以上是对"DirectDraw窗口模式的INSTANCE"的相关知识点的详细说明,这个示例程序可能是用来演示如何在窗口模式下使用DirectDraw进行图形绘制,同时与全屏模式进行对比,以展示两种模式下的性能和用户体验差异。

    JS自定义模式窗口

    在JavaScript(JS)编程中,模式窗口(Modal Window)是一种常见的用户交互设计,它用于创建一个弹出式界面,使得用户必须与该窗口交互后才能继续操作主...掌握这些知识点,你就能自如地在项目中应用自定义模式窗口了。

    用div实现的模式窗口

    在网页设计中,模式窗口(Modal Window)是一种常见的交互元素,它可以在用户当前浏览的页面上弹出一个半透明的遮罩层,并显示一个独立的内容区域,用于展示警告、确认对话框或者更多详细信息。本示例是用div元素...

    MASM32编程演示程序在窗口模式和全屏模式间切换

    **MASM32编程演示:窗口与全屏模式切换** MASM32是Microsoft Macro Assembler的32位版本,它是一种低级汇编语言工具,用于编写Windows平台下的应用程序。这个程序示例展示了如何利用MASM32来实现一个功能,即允许...

    mfc 创建多窗口同时显示

    Create()用于无模式窗口,它会在当前窗口上层显示;DoModal()用于模式对话框,它会阻止用户与其它窗口交互直到关闭该对话框。 4. **窗口间通信**:为了实现多个窗口间的交互,可以使用消息映射、事件通知或者直接...

    弹出模式窗口显示进度条

    综上所述,实现"弹出模式窗口显示进度条"涉及了C#的窗体设计、控件交互、异步编程以及文件操作等多个知识点。理解并掌握这些技术,可以帮助开发者创建出更加用户友好的应用程序。通过不断的实践和改进,可以进一步...

    精彩编程与编程技巧-建立无模式窗口...

    ### 建立无模式窗口:精彩编程与编程技巧 #### 概述 在软件开发过程中,特别是桌面应用程序设计中,窗口管理是一项重要的任务。无模式窗口作为一种特殊的窗口类型,在某些场景下非常有用,比如创建浮动工具栏或...

    VS2010 C++窗口应用程序窗口之间传递参数的实例

    理解并熟练运用这些知识点,能帮助开发者在VS2010的C++环境中有效地进行窗口间参数传递,避免潜在的内存问题,提高代码质量和稳定性。通过深入学习和实践,可以进一步掌握C++/CLI和其他.NET技术,增强跨平台和跨语言...

    weebox 优秀的js模式窗口

    这种模式窗口在网页中广泛用于表单提交、图片预览、信息提示等场景。Weebox的亮点在于它的灵活性和可定制性,开发者可以根据需求调整窗口的大小、样式、动画效果等。 文档`weebox0.4.docx`可能包含了Weebox的最新...

    嵌入窗口_窗口处理_VB嵌入窗口_vb6_

    这些技术可以帮助开发者实现高级功能,例如调整窗口的位置和大小,改变窗口的透明度,甚至控制窗口的生命周期,如销毁窗口和与其相关的进程。以下是对这些知识点的详细说明: 1. **窗口位置和大小调整**:通过API...

    游戏窗口化源码

    本文将深入探讨游戏窗口化的核心概念、实现原理以及相关技术。 一、窗口化与全屏模式的区别 1. 全屏模式:在这种模式下,游戏占据整个屏幕,通常会禁用操作系统桌面和其他应用,提供沉浸式的体验。全屏模式下,...

    极域3.0强制窗口化.zip

    标题中的“极域3.0强制窗口化.zip”暗示了这是一个关于极域电子教室软件的修改版或补丁,主要用于将极域3.0版本强制转换为窗口模式运行,而不是全屏模式。在教育领域,电子教室软件如极域常用于教师对学生的计算机...

    易语言游戏窗口化

    游戏窗口化是指将全屏运行的游戏转换成窗口模式,以便用户可以在玩游戏的同时进行其他操作。 首先,我们要理解“取屏幕句柄”。句柄是操作系统用来标识对象的唯一标识符,如窗口、控件等。在易语言中,通过特定的...

    窗口模式Window

    通过学习和掌握窗口模式的相关知识,开发者可以更好地设计和实现满足用户需求的图形用户界面。WindowModeDemo可能是一个演示程序,用于展示如何通过代码设置和控制各种窗口模式,这对于理解和实践这些概念非常有帮助...

    实现多个子窗口自适应父级窗口显示.rar

    7. **学习资源**:在C#和WinForm的学习过程中,可以参考MSDN文档、StackOverflow问答、教程网站等资源,获取更多关于控件布局和事件处理的知识。 8. **调试与测试**:完成以上步骤后,编译并运行你的程序。尝试调整...

    WindowsXP模式登录窗口类型网页

    文件名称列表中的"Windows式模式窗口网页"可能是指一个模拟Windows XP风格的网页应用,它在网页上复刻了Windows XP系统的界面和交互,可能是为了提供一种怀旧体验,或者是出于特定的技术需求,例如在网页中实现类似...

    魔兽窗口化锁鼠标源码

    在IT行业中,游戏开发是一个非常重要的领域,而《魔兽世界》作为一款经典的大型多人在线角色扮演游戏,其...在压缩包文件中,可能包含了实现这一功能的源代码,读者可以通过阅读和理解代码来进一步深入学习相关知识。

    易语言取当前窗口对应坐标

    本主题聚焦于易语言中的一个特定功能,即“取当前窗口对应坐标”及相关操作,这些是窗口程序开发中的关键知识点。 "取当前窗口对应坐标"这个概念主要涉及窗口的图形用户界面(GUI)编程。在Windows系统中,每个窗口...

Global site tag (gtag.js) - Google Analytics