FAQ ASP.NET/VB.NET

FAQ ASP.NET/VB.NETConsultez toutes les FAQ
Nombre d'auteurs : 38, nombre de questions : 369, dernière mise à jour : 16 juin 2021
Sommaire→Programmation coté client→Javascript→Fenêtre et Popup- Comment ouvrir une popup type "alert" en code-behind ?
- Comment ouvrir une popup html en code-behind ?
- Comment simuler le target="_blank" qui n'est pas valide W3C ?
- Comment afficher une page dans une nouvelle fenêtre de l'explorateur en code-behind ?
- Comment faire une popup de confirmation et récupérer le choix de l'utilisateur en code-behind ?
- Comment fermer la fenêtre courante en code-behind ?
- Comment fermer le navigateur lors d'un click sur un bouton ?
- Comment forcer l'utilisation du browser en plein écran ?
Comme vu dans Comment ajouter du javascript à ma page à partir du code-behind ?, on utilisera RegisterClientScriptBlock.
Dim message as String = "mon message"
Page.ClientScript.RegisterClientScriptBlock(GetType(), "alert depuis le codehind", string.Format("alert('{0}')", message), True)Comme vu dans Comment ajouter du javascript à ma page à partir du code-behind ?, on utilisera RegisterClientScriptBlock.
Dim url As String 'url de la popup html
Dim largeur As Integer 'largeur de la popup
Dim hauteur As Integer 'hauteur de la popup
Dim x As Integer 'position en x de la popup
Dim y As Integer '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)Il faut pour cela passer par du javascript.
<a href="page.aspx" onclick="window.open(this.href); return false;" >lien</a>Voici comment afficher une page dans une nouvelle fenêtre en code-behind :
' ouvrir une nouvelle fenetre
Page.ClientScript.RegisterClientScriptBlock(GetType(), "page dans nouvelle fenetre", "window.open(fichier.aspx?param1='toto'¶m2='titi',
'nomfenetre' ,'toolbar=yes,status=yes,directories=yes,menubar=yes,location=yes,scrollbars=yes,resizable=yes')", True)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 :
<script type="text/javascript">
function confirmSubmit()
{
var msg = "Etes vous sûr de vouloir enregistrer vos données?";
if (confirm(msg))
{
document.getElementById('<%= 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
Protected Overloads Overrides Sub OnLoad(ByVal e As EventArgs)
butsubmit.Attributes.Add("onClick", "return confirmSubmit();")
If hide.Value = "oui" Then
' Enregistrement;
End If
hide.Value = ""
MyBase.OnLoad(e)
End SubPage.ClientScript.RegisterClientScriptBlock(GetType(), "fermer", "window.close()", True)En utilisant le javascript et l'événement onclick
MonButton.Attributes.Add("onclick", "window.close();")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.
<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>


