web-dev-qa-db-fra.com

Comment ouvrir une page dans un nouvel onglet en utilisant la réponse. rediriger à asp.net

je veux ouvrir un nouvel onglet ou une nouvelle page en utilisant response.redirect dans le clic du bouton. im en utilisant la chaîne de requête pour transmettre des valeurs. comment ouvrir la page dans un nouvel onglet.

protected void btnSave_Click(object sender, EventArgs e)
   {
     ...//some code to insert records
 Response.Redirect("NewQuote.aspx?val=" + this.txtQuotationNo.Text);//displaying gridview in other page to print what needed

}
8
krishna mohan

Essaye ça. Cela fonctionne bien pour moi ...

protected void btnSave_Click(object sender, EventArgs e)
   {
     ...//some code to insert records
 Response.Write("<script>window.open ('NewQuote.aspx?val=" + txtQuotationNo.Text+"','_blank');</script>");


}
7
Chetan Kumar

Vous pouvez modifier votre élément de conception comme suit: OnClientClick 

<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button"  OnClientClick ="document.forms[0].target = '_blank';"  />

Code Javascript:

 Response.Write("<script>");
 Response.Write("window.open('NewQuote.aspx' ,'_blank')");
 Response.Write("</script>");
3
Tharif

si vous utilisez http , utilisez le code ci-dessous.

Response.Write("<script>window.open ('URL','_blank');</script>");

ce code ne peut pas être utilisé pour https pour https faire ci-dessous

javascript dans la page

function shwwindow(myurl) {
    window.open(myurl, '_blank');
}

dans le code c # derrière

 string URL = ResolveClientUrl("~") + "**internal page path**";
    ScriptManager.RegisterStartupScript(this, this.GetType(), "show window", 
    "shwwindow('"+URL+"');", true);

ce code ne peut pas contourner le bloqueur de popups du navigateur. l’utilisateur doit lui permettre de fonctionner ..__pour qu’il ouvre dans une nouvelle fenêtre ou un nouvel onglet jusqu’à la versionin firefox and chrome ouvre un nouvel onglet

profitez-en!!

1
Omar Kamel

Une redirection est toujours dans la même page que celle d'où vous venez, vous ne pouvez pas ouvrir une nouvelle fenêtre à partir d'un appel de redirection.

Je suggérerais d'injecter du code javascript dans le client pour ouvrir la nouvelle page lors du rechargement ou de passer à un contrôle pouvant s'ouvrir vers une nouvelle page, comme un LinkButton avec le bon attribut Target.

1
Patrick Hofman

Travaillé pour moi quand j'ai laissé les guillemets doubles hors de target = '_ blank';

0
Jim

La solution simple est ici.

Modifiez votre élément de bouton html et ajoutez attribut OnClientClick = "target = '_ blank';" .

<asp:Button ID="myButton" runat="server" CssClass="btn1"
            OnClick="btnSave_Click" OnClientClick="target ='_blank';" />

Puis dans btnSave_Click  

Response.Redirect(url);
0
fufu