Redirection vers une nouvelle fenêtre de navigateur
Pour une expérience utilisateur plus fluide lors de l'utilisation de Response.Redirect
, il est souvent préférable d'ouvrir la page redirigée dans un nouvel onglet ou une nouvelle fenêtre du navigateur. Cela évite de perturber la page en cours. Une méthode simple évite la complexité liée à l'utilisation de la fonction register script
de JavaScript.
Pour y parvenir, ajoutez simplement un attribut spécifique à votre lien ou bouton côté serveur :
<code class="language-html">OnClientClick="aspnetForm.target='_blank';"</code>
Voici un exemple utilisant un bouton :
<code class="language-html"><asp:Button ID="myButton" runat="server" Text="Click Me!" OnClick="myButton_Click" OnClientClick="aspnetForm.target='_blank';" /></code>
Dans l'événement OnClick
côté serveur (myButton_Click
), exécutez votre Response.Redirect
. La page redirigée s'ouvrira maintenant dans une nouvelle fenêtre.
Pour éviter tout comportement involontaire lorsque tous les liens s'ouvrent dans de nouvelles fenêtres, incluez cette fonction JavaScript dans l'en-tête de votre fenêtre contextuelle :
<code class="language-javascript">function fixform() { if (opener.document.getElementById("aspnetForm").target != "_blank") return; opener.document.getElementById("aspnetForm").target = ""; opener.document.getElementById("aspnetForm").action = opener.location.href; }</code>
Et ajoutez ceci à la balise body de votre fenêtre popup :
<code class="language-html">onload="fixform();"</code>
Cela garantit que seuls les liens prévus s'ouvrent dans de nouvelles fenêtres.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!