Use of hyperlinks in asp.net GridView (with parameters)

  • 2020-05-09 18:28:31
  • OfStack

Method 1. Use < a > The label,
Front desk:
 
<a href='<%# "OrigImageShow.aspx?id=1&image_id="+Eval("ID")%>' id="tb_search" runat="server" target="_blank">   The pop-up   </a> 
<a href='Javascript:alert("<%# OrigImageShow.aspx?image_id=" + Eval("ID")%>")'> The pop-up </a> 

use < a > TAB, do not refresh the main page
Method 2. : asp:HyperLink
(1) front desk: < asp:HyperLink ID="hyperLink" runat="server" Text=' < %# Eval("OperationFlag") % > ' Target="_blank" > < /asp:HyperLink >
Background binding path:
 
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
  if (e.Row.RowType == DataControlRowType.DataRow) 
{ 
   HyperLink btnlink = (HyperLink)e.Row.Cells[3].FindControl("hyperLink"); 
HiddenField hidderid = (HiddenField)e.Row.Cells[3].FindControl("log_id");// Gets the parameters to pass by hiding the field  
string url = string.Empty; 
if (hidderid != null) 
{ 
url = "~/ImageManage/LogPicDetails.aspx?id=" + hidderid.Value; 
btnlink.NavigateUrl = url; 
} 
} 
} 

(2) < asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl=' < %# "OrigImageShow.aspx?image_id=" + Eval("ID")% > '
Text=" pop-up "Target="_blank" > < /asp:HyperLink >
Using asp:HyperLink, the popup page does not refresh the main page
Methods 3. asp: LinkButton
Front desk: (1) < asp:LinkButton ID="tb_searchori" runat="server" Text=" popup "OnClientClick= < %#"window.open('OrigImageShow.aspx?image_id="+Eval("id")+"')" % > > < /asp:LinkButton >
(2) the front desk: < asp:LinkButton ID="tb_searchori" runat="server" Text=" popup "OnClick="LB_Ori_Click" CommandArgument=' < %#Bind("ID") % > ' > < /asp:LinkButton >
 
protected void LB_Ori_Click(object sender, EventArgs e) 
{ 
LinkButton lbtn = (LinkButton)sender; 
int imgID = int.Parse(lbtn.CommandArgument.ToString()); 
string url = "OrigImageShow.aspx?image_id=" + imgID; 
url = Page.ResolveUrl(url); 
Page.ClientScript.RegisterStartupScript(Page.GetType(), "messid", "<script language='javascript'>window.open('" + url + "');</script>"); 
} 

Use asp:LinkButton, pop up the page and refresh the main page
To sum up: it is recommended to use HyperLink or a

Related articles: