我在Gridview的列中有一个linkbutton。
当用户点击链接按钮时,我必须重定向到另一个页面。
任何人都可以提供适当的代码来完成此任务吗?
答案 0 :(得分:2)
如果你需要做的只是重定向到另一个页面,为什么不使用HyperLinkField?
您可以使用数据对象字段设置url parameters and text,如下所示:
<asp:hyperlinkfield datatextfield="UnitPrice"
datatextformatstring="{0:c}"
datanavigateurlfields="ProductID"
datanavigateurlformatstring="~\details.aspx?ProductID={0}"
headertext="Price"
target="_blank" />
答案 1 :(得分:0)
将PostBackUrl属性设置为您要去的URL。
答案 2 :(得分:0)
另一种方法是在链接按钮的单击事件中使用response.redirect或server.transfer,如下所示:
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub LinkButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButton1.Click
Response.Redirect("Page2.aspx")
End Sub
Protected Sub LinkButton2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButton2.Click
Server.Transfer("Page2.aspx")
End Sub
End Class
区别在于response.redirect显示新的URL,而server.transfer则没有。
答案 3 :(得分:0)
<asp:LinkButton ID="sessionLink" runat="server" Text='Tickets'
PostBackUrl="SelectTickets.aspx"/>
当您指定PostBackUrl属性时,您的onclick事件将永远不会被触发。它只是将您重定向到另一页。 您可以做的是在您的点击事件中添加以下语句并删除postbackurl属性:
<asp:LinkButton ID="sessionLink" runat="server" Text='Tickets'
OnClick="selectTickets" />
在后面的代码中调用selectTickets函数,所以你必须在代码后面创建一个函数:
Private Sub selectTickets(ByVal sender As Object, ByVal e As CommandEventArgs)
'whatever else you want to be done
Response.Redirect("SelectTickets.aspx")
End Sub