asp,net GridView HyperLink控件点击事件


  • Gridview的HyperLink
  • 怎么点击这个控件跳转到C#的后台方法里
  • 不换控件
  • 跳C#后台方法里

你实在不想换,可以用ajax,
$ajax.post(你的地址,"a=1", success: function() { ... })
服务器对应页面的page_load里判断下,if( request.params[a] == 1 ) 你的方法();

点击这个控件是直接跳转网页,你可以先给它设定跳转的地址,数据绑定 你想跳转到后台方法可以用linkbutton啊
下面hyperlink和linkbutton 都可以试下

                    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
                <Columns>
                    <asp:TemplateField HeaderText="hyperlink">
                        <ItemTemplate>
                            <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#"Default2.aspx?id="+Eval("id")%>' Text='<%#Eval("id")%>'
                                ></asp:HyperLink>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="linkbutton">
                        <ItemTemplate>
                            <asp:LinkButton ID="LinkButton1" runat="server" Text='<%#Eval("name")%>' onclick="LinkButton1_Click">LinkButton</asp:LinkButton>
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>

     protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
                  DataTable dt = new DataTable();
        dt.Columns.Add("id", typeof(string));
        dt.Columns.Add("name", typeof(string));
        dt.Rows.Add("1", "张三1");
        dt.Rows.Add("2", "张三2");
        dt.Rows.Add("3", "张三3");
        dt.Rows.Add("4", "张三4");
        dt.Rows.Add("5", "张三5");
        dt.Rows.Add("6", "张三6");
        dt.Rows.Add("7", "张三7");
        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
}
     protected void LinkButton1_Click(object sender, EventArgs e)
{
    string lbText = (sender as LinkButton).Text;
    Response.Write("<script type='text/javascript' language='javascript'>alert('点击了  "+lbText+"') </script>"); //操作
    Response.Redirect("Default2.aspx"); //跳转页面
}