Home >Web Front-end >JS Tutorial >javascript showModalDialog value transfer and FireFox's window.open parent-child window value transfer example_javascript skills

javascript showModalDialog value transfer and FireFox's window.open parent-child window value transfer example_javascript skills

PHP中文网
PHP中文网Original
2016-05-16 18:42:111279browse

javascript showModalDialog value passing and FireFox’s window.open parent-child window value passing sample code.

First briefly introduce the basic knowledge:
1. window.open() support environment: Java1.0 /J1.0 /Nav2 /IE3 /Opera3
2. Basic syntax:
window.open(pageURL,name,parameters)
Where:
pageURL is the sub-window path
name is the sub-window handle
parameters is the window parameters (each parameter is separated by a comma)
3. Parameters
Among them, yes/no can also use 1/0; pixel value is a specific value, unit pixel.
Parameter | Value range | Description
alwaysLowered | yes/no | The specified window is hidden behind all windows
alwaysRaised | yes/no | The specified window is suspended above all windows
depended | yes/ no | Whether to close the parent window at the same time
directories | yes/no | whether the directory bar of Nav2 and 3 is visible
height | pixel value | window height
hotkeys | yes/no | in a window without menu bar CMD safe exit hotkey
innerHeight | pixel value | Pixel height of the document in the window
innerWidth | pixel value | Pixel width of the document in the window
location | yes/no | Whether the location bar is visible
menubar | yes/no | Whether the menu bar is visible
outerHeight | pixel value | Set the pixel height of the window (including decorative borders)
outerWidth | pixel value | Set the pixel width of the window (including decorative borders)
resizable | yes/no | Whether the window size is resizable
screenX | pixel value | The pixel length of the window from the left edge of the screen
screenY | pixel value | The pixel length of the window from the upper edge of the screen
scrollbars | yes /no | Whether the window can have a scroll bar
titlebar | yes/no | Whether the window title bar is visible
toolbar | yes/no | Whether the window toolbar is visible
Width | pixel value | The pixel width of the window
z-look | yes/no | Whether the window floats on top of other windows after it is activated
window.showModalDialog User Manual
Basic introduction:
showModalDialog() (IE 4 supported)
showModelessDialog () (IE 5 supported)
The window.showModalDialog() method is used to create a modal dialog box that displays HTML content.
The window.showModelessDialog() method is used to create a non-modal dialog box that displays HTML content.
Usage:
vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures])
vReturnValue = window.showModelessDialog(sURL [, vArguments] [,sFeatures])
Parameter description:
sURL--
Required parameter, type: string. Used to specify the URL of the document to be displayed in the dialog box.
vArguments--
Optional parameters, type: variant. Used to pass parameters to the dialog box. The type of parameters passed is not limited, including arrays, etc. The dialog box obtains the parameters passed in through window.dialogArguments.
sFeatures--
Optional parameter, type: string. Used to describe the appearance of the dialog box and other information, you can use one or more of the following, separated by semicolons ";".
1.dialogHeight: Dialog height, not less than 100px. The default units of dialogHeight and dialogWidth in IE4 are em, while in IE5 it is px. For convenience, when defining modal dialog boxes, use px as the unit. .
2.dialogWidth: Dialog width.
3.dialogLeft: distance from the left side of the screen.
4.dialogTop: distance from the screen.
5.center: {yes | no | 1 | 0}: Whether the window is centered, the default is yes, but the height and width can still be specified.
6.help: {yes | no | 1 | 0}: Whether to display the help button, the default is yes.
7.resizable: {yes | no | 1 | 0} [IE5+]: Whether it can be resized. The default is no.
8.status: {yes | no | 1 | 0} [IE5]: Whether to display the status bar. Default is yes[Modal] or no[Modal].
9.scroll:{ yes | no | 1 | 0 | on | off }: Indicates whether the dialog box displays scroll bars. The default is yes.
The following attributes are used in HTA and are generally not used in ordinary web pages.
10.dialogHide:{ yes | no | 1 | 0 | on | off }: Whether the dialog box is hidden during printing or print preview. The default is no.
11.edge:{ sunken | raised }: Specifies the border style of the dialog box. The default is raised.
12.unadorned:{ yes | no | 1 | 0 | on | off }: The default is no.
Parameter passing:
1. To pass parameters to the dialog box, they are passed through vArguments. There is no limit on the type. For string types, the maximum length is 4096 characters. Objects can also be passed, for example:
----------------------------------
parent.htm

Copy code The code is as follows:




modal.htm

Copy code The code is as follows:




----------------------------------
2. You can open the conversation through window.returnValue The window of the frame returns information, which of course can also be an object. For example:
--------------------------------
parent.htm

Copy code The code is as follows:


< type="text/java">
str =window.showModalDialog("modal.htm",,"dialogWidth= 200px;dialogHeight=100px");
alert(str);


modal.htm

Copy code The code is as follows:




In IE, we can use showModalDialog to pass values.
The syntax is as follows:
vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])
However, there is no showModalDialog method in Firefox, but we can use window.open()
The syntax is as follows:
oNewWindow = window.open([sURL] [, sName] [, sFeatures] [, bReplace])
It’s just that under Firefox, among the parameters of window.open, sFeature has some more function settings. Yes, if you want the opened window to be the same as IE's showModalDialog under FireFox, just add modal=yes to sFeatures.
An example is used below to illustrate its usage.
Function description: Input the color type from the child window and submit it to the parent window, and add options to the drop-down list.
a.html

Copy code The code is as follows:






a .html document









b.html

Copy code The code is as follows:





b.html文档











color:



修改为兼容IE和FireFoxr的代码如下:
[code]




a.html文档










b.html

复制代码 代码如下:





b.html文档











color:





The following is a test code posted by a friend on the Internet. You can test it.

Copy code The code is as follows:






Main page




< /html>


test.html source code:

Copy code The code is as follows:



< ;html xmlns="http://www.w3.org/1999/xhtml">


Get the value of the main page


script type="text/javascript" >





showModalDialog Value transfer and refresh

showModalDialog usage example, the parent window passes the value to the child window, and the child window sets the value of the parent window, When the child window is closed, the value is returned to the parent window.
farther.html


Copy code

The code is as follows:





New Document










传递到父窗口的值:

返回的值:

子窗口设置的值:





child.html

复制代码 代码如下:





New Document












父窗口传递来的值:

输入要设置父窗口的值:

输入返回的值:





说明:
由于showModalDialog缓存严重,下面是在子窗口取消客户端缓存的设置.也可以在服务器端取消缓存,参考:
脚本之家的下一篇文章。



(二)下面是关闭刷新父窗口的例子
farther.html

Copy code The code is as follows:



< ;HTML>

New Document









pass to Value of parent window:





child.html

Copy code The code is as follows:





New Document












Value passed from the parent window:







Description
1. The following is to cancel the client cache:



You can also cancel the cache on the server side, refer to the next article of Script House
2. Pass the description to the parent window. In ASP.NET, you can also use aaa.aspx?id=1 to pass it.
3. If you don’t refresh the parent window, you can set it directly in the parent window like this.
<script> <br>window.showModalDialog("child.html",window,"dialogWidth:335px;status:no;dialogHeight:300px"); <br></script>
4. In the child If you want to submit a page in the window, you must add:, so that a new window will not open.



Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn