<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
Width="245px" onselectedindexchanged="GridView1_SelectedIndexChanged" >
<Columns>
<asp:TemplateField>
<ItemStyle BackColor="#CCCCCC" ForeColor="Black" Width="250px" HorizontalAlign="Center" BorderStyle="None" />
<ItemTemplate>
<a href="" onclick="GridView1_SelectedIndexChanged"> <asp:Label ID="Label5" runat="server" Text='<%# Bind("users") %>'></asp:Label></a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我不想使用自动生成的选择链接或任何按钮,我只想让标签(或链接)本身触发selectedIndexChanged事件。
C#代码是: -
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) {
show_chats();
}
但是没有调用事件方法。请建议做什么
答案 0 :(得分:1)
<a onclick="...">
是严格的HTML标记,onclick
正在寻找名为GridView1_SelectedIndexChanged
的javascript函数,而不是服务器端方法。将其更改为:
<asp:LinkButton runat="server" OnClick="GridView1_SelectedIndexChanged">
答案 1 :(得分:-1)
如果您不想使用linkbutton,或者您可以执行以下操作 -
<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();
}