Javascript 如何使整个Gridview行可单击并打开新链接?
如何使整个gridview行在ASP.NET中可单击 这就是我目前正在尝试的:Javascript 如何使整个Gridview行可单击并打开新链接?,javascript,c#,asp.net,vb.net,gridview,Javascript,C#,Asp.net,Vb.net,Gridview,如何使整个gridview行在ASP.NET中可单击 这就是我目前正在尝试的: Protected Sub gv_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) If e.Row.RowType = DataControlRowType.DataRow Then e.Row.Attributes.Add("onclick", "l
Protected Sub gv_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.Attributes.Add("onclick", "location.href='URL.aspx'")
End If
End Sub
每行包含多个模板字段,因此在本例中,仅向字段添加超链接是不够的。如何使用.NET和一些javascript魔术将超链接添加到gridview行。
VB
Protected Sub gv_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles gv.RowDataBound
If (e.Row.RowType = DataControlRowType.DataRow) Then
Dim QueryString As String = DataBinder.Eval(e.Row.DataItem, "QueryString").ToString
Dim NavigateURL As String = (ResolveUrl("~/URL.aspx?QueryString=" + QueryString))
e.Row.Attributes.Add("onClick", String.Format("javascript:window.location='{0}';", NavigateURL))
e.Row.Style.Add("cursor", "pointer")
End If
End Sub
C#
你的代码是如何工作的?不确定是否是你要找的。@Jumpei它不是。这就是我请求帮助的原因。我知道这是可以做到的,就像我以前做的一样,我只是记不起正确的语法。@equisde谢谢你的建议。不,不幸的是,这不起作用。我需要整行链接,而不仅仅是字段/列。不要忘记最后一个引号。
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e) {
if ((e.Row.RowType == DataControlRowType.DataRow)) {
string QueryString = DataBinder.Eval(e.Row.DataItem, "QueryString").ToString;
string NavigateURL = ResolveUrl(("~/URL.aspx?QueryString=" + QueryString));
e.Row.Attributes.Add("onClick", string.Format("javascript:window.location=\'{0}\';", NavigateURL));
e.Row.Style.Add("cursor", "pointer");
}
}