C# 函数为';在onclick事件中没有调用?

C# 函数为';在onclick事件中没有调用?,c#,asp.net,gridview,C#,Asp.net,Gridview,但是没有调用事件方法。请建议执行的操作是严格的HTML标记,onclick正在查找名为GridView1\u SelectedIndexChanged的javascript函数,而不是服务器端方法。将此更改为: protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { show_chats(); } 如果您不想使用linkbutton,也可以按如下操作- <asp:LinkButton

但是没有调用事件方法。请建议执行的操作是严格的HTML标记,
onclick
正在查找名为
GridView1\u SelectedIndexChanged
的javascript函数,而不是服务器端方法。将此更改为:

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) {
    show_chats();
}

如果您不想使用linkbutton,也可以按如下操作-

<asp:LinkButton runat="server" OnClick="GridView1_SelectedIndexChanged">

将标记更改为asp:linkbutton。这不会引发服务器端事件。请尝试设置
selectedindex=“0”
,看看这是否有帮助,在你的函数中放置一个断点,看看它是否被击中了不,它根本没有被击中@pseudonymI正在使用这个:-但是仍然没有工作区编辑-忘记更改为
asp:linkbutton
@sohambanerjee好的,现在它击中了函数,但是我点击gridView的第二行,它抛出空指针异常,通过调试,我发现selectedRow值为Null,但随后,我得到以下错误:当前上下文中不存在名称,并且yourlinkId在后面的代码中显示错误您无法直接访问控件,因为它在这一行中没有我得到的错误:-yourlinkId.ServerClick+=new EventHandler(GridView1\u SelectedIndexChanged);
<asp:LinkButton runat="server" OnClick="GridView1_SelectedIndexChanged">
<a href="" id="yourlinkId" runat="server"><asp:Label ID="Label5" runat="server" Text='<%# Bind("users") %>'></a>
    protected void Page_Load(object sender, EventArgs e)
    {
        yourlinkId.ServerClick += new EventHandler(GridView1_SelectedIndexChanged);
    }

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
         show_chats();
    }