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
- 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 Sub
Page.
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>