如何在单击行时从网格视图重定向

时间:2011-11-09 17:10:53

标签: c# asp.net gridview datagrid response.redirect

在我的网格视图中,我点击了一个模板字段按钮,它重定向页面并发送msgid和url,是否可以通过单击行中的任意位置来执行此操作,即如果我单击msgid或标题然后它应该重定向以响应msgid行的度量页面。就像选择按钮一样,

MsgID      Title       Actions

1          First        Image(Which redirects)
2          second       Image(Which redirects)

在此表中,如果用户单击第1行中的任何位置,则页面应重定向,则必须执行与Image相同的操作。我怎么能这样做

  <asp:GridView ID="Grid_Messagetable" runat="server" BorderWidth="5" GridLines="None"
                    CssClass="gridTable" SelectedIndex="0"
                     DataKeyNames="MsgID" ShowHeaderWhenEmpty="true"
                    OnRowDataBound="MyGrid_RowDataBound" AutoGenerateColumns="False" AllowSorting="true"
                    OnSorting="gridView_Sorting" >                                     <Columns>

                        <asp:BoundField DataField="MsgID" HeaderText="MsgID" SortExpression="MsgID" />
                        <asp:BoundField DataField="Title" ItemStyle-Width="35%" HeaderText="Subject" SortExpression="Title" />                                                          <asp:TemplateField HeaderText="Actions" ItemStyle-Width="15%">
       <ItemTemplate>
           <asp:ImageButton ID="imgbtn_ViewDashBoard"  ImageUrl="Styles/Images/icon_dashboard.png"
                                    Enabled="True" Width="" runat="server" PostBackUrl='<%# Eval("MsgID", "ResponseMetric.aspx?MsgID={0}") %>'
                                    Text='Send' ToolTip="View DashBoard"></asp:ImageButton>
                            </ItemTemplate>
                        </asp:TemplateField>

                    </Columns>
                </asp:GridView>

1 个答案:

答案 0 :(得分:1)

您可以使用RowDataBound事件将点击事件附加到该行。

标记:

redirect = function(){
    window.location.hef = "home.aspx";
}

<asp:GridView ID="GridView1" runat="server" OnRowDataBound="GridView1_RowDataBound" ...>

代码隐藏:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    e.Row.Attributes["onclick"] = "redirect();"
}