IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ ASP.NET/C#

FAQ ASP.NET/C#Consultez toutes les FAQ

Nombre d'auteurs : 39, nombre de questions : 371, dernière mise à jour : 15 juin 2021 

 
OuvrirSommaireProgrammation coté clientJavascriptFenêtre et Popup

Comme vu dans Comment ajouter du javascript à ma page à partir du code-behind ?, on utilisera RegisterClientScriptBlock.

 
Sélectionnez
string message = "mon message";
Page.ClientScript.RegisterClientScriptBlock(GetType(), "alert depuis le codehind", string.Format("alert('{0}')", message), true);
Mis à jour le 20 septembre 2009  par David Pedehourcq, nico-pyright(c)

Comme vu dans Comment ajouter du javascript à ma page à partir du code-behind ?, on utilisera RegisterClientScriptBlock.

 
Sélectionnez
string url; //url de la popup html
int largeur; //largeur de la popup
int hauteur; //hauteur de la popup
int x; //position en x de la popup
int y; //position en y de la popup

//la position en x,y se fait à partir du coin supérieur gauche de la fenêtre
Page.ClientScript.RegisterClientScriptBlock(GetType(), "popup depuis le codehind", 
	string.Format("window.open('{0}','_blank','width={1},height={2},top={3},left={4}');", url,largeur, hauteur, x, y), true);
Mis à jour le 20 septembre 2009  par David Pedehourcq, nico-pyright(c)

Il faut pour cela passer par du javascript.

 
Sélectionnez
<a href="page.aspx" onclick="window.open(this.href); return false;" >lien</a>
Créé le 29 mai 2006  par Didier Danse

Voici comment afficher une page dans une nouvelle fenêtre en code-behind :

 
Sélectionnez
//ouvrir une nouvelle fenetre
Page.ClientScript.RegisterClientScriptBlock(GetType(), "page dans nouvelle fenetre", "window.open(fichier.aspx?param1='toto'&param2='titi', 
	'nomfenetre' ,'toolbar=yes,status=yes,directories=yes,menubar=yes,location=yes,scrollbars=yes,resizable=yes')", true);
Mis à jour le 20 septembre 2009  par David Pedehourcq, nico-pyright(c)

Nous allons voir comment afficher une boite de dialogue javascript type confirm (un texte avec un choix oui/non) et comment récupérer en code-behind si l'utilisateur a confirmé en cliquant sur oui. dans votre page aspx :

 
Sélectionnez
<script type="text/javascript">
	function confirmSubmit()
	{
		var msg = "Etes vous sûr de vouloir enregistrer vos données?";
		if (confirm(msg))
		{
			document.getElementById('&lt;%= hide.ClientID %>').value = "oui";
		}
	}
</script>


<form id="form1" runat="server">
	<asp:Button ID="butsubmit" Text="GO" runat="server" />
	<asp:HiddenField runat="server" ID="hide" />
</form>

dans votre code-behind

 
Sélectionnez
protected override void OnLoad(EventArgs e)
{
	butsubmit.Attributes.Add("onClick", "return confirmSubmit();");
	if (hide.Value == "oui")
	{
		// Enregistrement;
	}
	hide.Value = "";            
	base.OnLoad(e);
}
Créé le 12 octobre 2003  par David Pedehourcq
 
Sélectionnez
Page.ClientScript.RegisterClientScriptBlock(GetType(), "fermer", "window.close()", true);
Créé le 17 décembre 2003  par David Pedehourcq

En utilisant le javascript et l'événement onclick

 
Sélectionnez
MonButton.Attributes.Add("onclick", "window.close();");
Créé le 10 mars 2008  par nico-pyright(c)

Il vous faudra passer par du javascript. Placer ce script dans le contenu de votre page et automatiquement, vous utiliserez le browser de sorte que celui-ci occupe tout l'espace disponible.

 
Sélectionnez
<script language="javascript">
	// On déplace le browser dans le coin supérieur gauche
	window.moveTo(0,0);
	// On agrandit la fenêtre pour occuper tout l'espace disponible
	window.resizeTo(window.screen.availWidth, window.screen.availheight);            
</script>
Créé le 14 novembre 2007  par Didier Danse

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2007 Dotnet Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.