【问题标题】:how to redirect to another page by clicking on a gridview row [closed]如何通过单击gridview行重定向到另一个页面[关闭]
【发布时间】:2017-09-05 04:42:45
【问题描述】:

我在我的页面中使用网格视图,我的要求是当我点击一行(一行的任何位置)时,它应该被重定向到另一个页面,该页面将显示所选行的详细信息。

谢谢

【问题讨论】:

标签: javascript c# jquery sql asp.net


【解决方案1】:

如果你已经加载了 jQuery.. 那么:

$('rowID-or-className').click(function(){
    window.location.href = 'https://docs.google.com';
});

【讨论】:

    【解决方案2】:

    你可以使用OnSelectedIndexChanged

    <asp:GridView ID="GridView1" runat="server" OnSelectedIndexChanged="OnSelectedIndexChanged">
        <Columns>
            <asp:BoundField DataField="Name" HeaderText="Name" />
            <asp:BoundField DataField="Country" HeaderText="Country"/>
        </Columns>
    </asp:GridView>
    <asp:LinkButton ID="lnkDummy" runat="server"></asp:LinkButton>
    

    protected void OnSelectedIndexChanged(object sender, EventArgs e)
    {
        // do some business and redirect
    }
    

    可以在here找到一个完整的例子

    【讨论】:

      【解决方案3】:

      这是工作示例:

       <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
            <script>
            $(document).ready(function(){
              $('#id').click(function(){
         window.location.href = 'www.test.com';
        });
        });
       </script>
      


       <div id="id">CLick</div>
      

      【讨论】:

        【解决方案4】:

        在 gridview RowDataBound 事件中,您可以轻松做到这一点。这是一种方法,您可以使用此方法从后面的代码和特定行中传递任何数据:

        这是一个简单的代码示例:它将为您的 gridview 中的所有行设置 onclick 事件。

        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
         if (e.Row.RowType == DataControlRowType.DataRow)
            {
                e.Row.Attributes["onclick"] = "window.location.href='YourPage.aspx'";
            }
        }
        

        如果您想从单击的行中传递一些值,例如,您在该行中有一个标签,该标签具有行数据的唯一 ID,那么您可以将此 ID 传递给您的页面并获取该页面加载的所有数据事件,你可以这样做:

        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
         if (e.Row.RowType == DataControlRowType.DataRow)
            {
                string idd = ((Label)e.Row.FindControl("lblId")).Text;
                e.Row.Attributes["onclick"] = "window.location.href='Youpage.aspx?id="+idd+"'";        }
        }
        

        希望它能解决您的问题。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2022-11-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-12-20
          相关资源
          最近更新 更多