Use of hyperlinks in asp.net GridView (with parameters)
- 2020-05-09 18:28:31
- OfStack
Method 1. Use
<
a
>
The label,
Front desk:
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:
(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 >
Use asp:LinkButton, pop up the page and refresh the main page
To sum up: it is recommended to use HyperLink or a
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