Parlons de l'utilisation de base de Window.showmodaldialogique
ShowModaldialog () (IE 4+ Support)
ShowModelessDialog () (IE 5+ Support)
Window.showmodaldialog () est utilisée pour créer une boîte de dialogue modulaire qui affiche le contenu HTML.
Window.showModelessDialog () est utilisée pour créer une boîte de dialogue non modale qui affiche le contenu HTML.
Comment utiliser:
vreTurnValue = window.showmodaldialog (Surl [, varguments] [, sfeatures]))
vreTurnValue = window.showModelessDialog (Surl [, varguments] [, sfeatures]))))
Description du paramètre:
Paramètres surl-most-choose, Type: String. URL utilisé pour spécifier le document à afficher dans la boîte de dialogue.
Paramètre Varguments-optional, Type: Variant. Utilisé pour transmettre des paramètres à la boîte de dialogue. Le type de paramètre passé n'est pas limité, y compris le tableau, etc. La boîte de dialogue obtient des paramètres transmis par la fenêtre.dialogarguments.
Paramètre SFeatures-optional, Type: String. Utilisé pour décrire l'apparence et d'autres informations de la boîte de dialogue, vous pouvez utiliser un ou plusieurs ci-dessous et utiliser le segment ";"
1. Dialogneight: La hauteur de la boîte de dialogue, pas moins de 100px, la valeur de dialogue et la largeur de dialogue dans IE4 sont EM, et IE5 est PX, ce qui est pratique pour la boîte de dialogue modale.
2. Dialogue de dialogue: Largeur de la boîte de dialogue.
3.Dialogleft: distance de la gauche de l'écran.
4. Dialogtop: distance de l'écran.
5.Center: {Oui | Non | 1 | 0}: si la fenêtre est centrée, la valeur par défaut, mais la hauteur et la largeur peuvent toujours être spécifiées.
6.Help: {Oui | Non | 1 | 0}: s'il faut afficher le bouton d'aide, par défaut.
7. Resivable: {Oui | Non | 1 | 0} [IE5 +]: si cela peut être modifié. La valeur par défaut no.
8.Status: {Oui | Non | 1 | 0} [IE5 +]: s'il faut afficher la barre d'état. La valeur par défaut est oui [sans modes] ou non [modal].
9.Scroll: {Oui | Non | 1 | 0 | 0 | La valeur par défaut est oui.
Les attributs suivants sont utilisés dans HTA et ne sont généralement pas utilisés dans les pages Web générales.
10. Dialogue: {Oui | Non | 1 | 0 | 0 | La valeur par défaut est non.
11.Edge: {Sunken | La valeur par défaut est une augmentation.
12.Unadorned: {Oui | Non | 1 | 0 |
Transmission des paramètres:
1. Si vous souhaitez passer les paramètres dans la boîte de dialogue, vous pouvez passer par Varguments. Le type n'est pas limité. Vous pouvez également passer l'objet, comme:
Copier le code du code comme suit:
<cript>
var obj = nouveau objet ();
obj.name = "ttop";
Window.showmodaldialog ("test.htm", obj, "DialogWidth = 200px; dialogHeight = 100px");
</cript>
test.htm
<cript>
var obj = window.dialogarguments
Alert ("Les paramètres que vous passez sont:" + obj.name)
</cript>
2. Vous pouvez retourner les informations à la fenêtre qui ouvre la boîte de dialogue via Window.ReturnValue. Par exemple:
Copier le code du code comme suit:
<cript>
Str = window.showmodaldialog ("test.htm", "dialogwidth = 200px; dialogHeight = 100px");
alerte (str);
</cript>
test.htm
<cript>
window.returnvalue = "/";
</cript>
1. Quelle est la différence entre ShowModaldialog et ShowModelessDialog?
ShowModaldialog: Après avoir été ouvert, il gardera toujours la mise au point de l'entrée. À moins que la boîte de dialogue ne soit fermée, les utilisateurs ne peuvent pas passer à la fenêtre principale. Similaire à l'effet de fonctionnement de l'alerte.
ShowModelessDialog: Après avoir été ouvert, les utilisateurs peuvent changer au hasard la mise au point d'entrée. Il n'a aucun impact sur la fenêtre principale (tout au plus il est bloqué.: P)
Deuxièmement, comment pouvons-nous laisser une nouvelle fenêtre apparaître dans ShowModaldialog et ShowModelessDialog?
Ajoutez <base cible = "_ seld"> aux pages Web ouvertes. Cette phrase est généralement placée entre <html> et <body>.
Comment actualiser le contenu dans ShowModaldialog et ShowModelessDialog?
Dans ShowModaldialog et ShowModelessDialog, F5 ne peut pas être actualisé et le menu ne peut pas être apparu. Cela ne peut s'appuyer que sur JavaScript.
<body onkeydown = "if (event.KeyCode == 116) {regoad.click ()}">
<A id = "reload" href = "filename.htm" style = "affiche: aucun"> recharger ... </a>
Remplacez FileName.htm par le nom de la page Web et mettez-le dans la page Web que vous avez ouverte.
Quatrièmement, comment fermer la fenêtre de ShowModaldialog (ou showModelessDialog) avec JavaScript.
<input type = "bouton" value = "close" onclick = "window.close ()">
Coopérez également avec <Base Target = "_ Seld">, sinon il ouvrira une nouvelle fenêtre IE, puis l'éteindra.
5. ShowModaldialog et ShowModelessDialog Techniques de transmission des données.
(Paroles de l'auteur: je voulais à l'origine l'écrire dans une question et une réponse, mais je ne pouvais pas penser à cela, donc j'ai dû le faire.)
Cette chose est plus gênante.
Exemple: Vous devez maintenant lire ou définir une variable var_name
Méthode de transmission générale:
Window.showmodaldialog ("filename.htm", var_name)
// transférer les variables var_name
Lors de la lecture et de la mise en place dans showmodaldialalicy (ou showModelessDialog) ::
alert (window.dialogarguments) // lisez la variable var_name
Window.dialogarguments = "oyiboy" // définir la variable var_name
Cette méthode peut être satisfaite, mais quand voulez-vous fonctionner var_name, puis utiliser le deuxième changement var_id en même temps? Il ne pourra plus fonctionner. Ce sont les limites de cette méthode de transmission.
Ce qui suit est la façon dont je recommande de l'utiliser:
Window.showmodaldialog ("filename.htm", fenêtre)
// Peu importe les variables à utiliser, seul l'objet de fenêtre de la fenêtre principale est directement transmis
Lors de la lecture et de la mise en place dans showmodaldialalicy (ou showModelessDialog) ::
alert (window.dialogarguments.var_name) // Lisez la variable var_name
Window.dialogarguments.var_name = "oyiboy" // Définissez la variable var_name
En même temps, je peux également utiliser la variable var_id
alert (window.dialogarguments.var_id) // Lisez la variable var_id
Window.dialogarguments.var_id = "001" // Définir la variable Var_ID
Peut également faire fonctionner n'importe quel objet de la fenêtre principale, tels que les éléments de l'objet de forme.
Window.dialogarguments.form1.index1.value = "Il s'agit de la valeur de l'élément index1"
Sur la page parent, utilisez onclight = "" "varite = window.showmodalog ('changephoto.htm', 'dialogwidth: 500px; dialogneight: 300px; help: no'); if (typ eof (revial)! = 'Undefined' ) {Form.TextName.Value = Reval;} "Style =" "Cursor: Hand"> Cliquez ici pour modifier l'image
Ouvrez un cadre dans la fenêtre Word 'Changephoto.htm'.
ChangePhoto.htm: <entrée type = bouton onclick = "onclose ();"
Fonction onClose () {window.returnvalue = form1.save.value;
Fichier ASP: parent.document.form1.save.value = "valeur ou divers";