如何在ASP.NET中的复选框列表中获取CLICKED的复选框

时间:2012-09-26 15:42:14

标签: asp.net

我有一个带有复选框的ASP.NET页面,其中包含一堆复选框。

我想知道哪个复选框是CLICKED的索引。我不是在寻找哪个复选框是CHECKED,因为可以使用SelectedIndex检索它。

比如说我有以下代码

<asp:CheckBoxList ID="_CheckBoxList" runat="server">
                <asp:ListItem Value="0" Selected="True">Apple</asp:ListItem>
                <asp:ListItem Value="1">Banana</asp:ListItem>
                <asp:ListItem Value="2" Selected="True">Orange</asp:ListItem>
</asp:CheckBoxList>

因此,如果用户单击Orange复选框(基本上会取消选中),我希望输出为2,因为Orange已被点击。

感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用javascript捕获这些项目的onclick事件,并将值存储在隐藏的html字段中。然后你可以从代码隐藏或客户端使用它。

如果您希望每次点击都能在后端触发事件,则可以使用ajax。

答案 1 :(得分:0)

我假设您想在服务器端知道这一点。如果你想在客户端知道它,那就相当简单了。

点击信息不会自动传递给服务器。您必须使用Javascript捕获它并将其传回,通过将其存储在隐藏字段中或使用Ajax调用。

我假设您想知道他们的最终点击,而不是他们可能已经检查和取消选中的所有复选框。如果您只需要知道最终点击的选项,您可以使用一个隐藏字段。如果您需要知道在最终回发之前发生的所有点击,事情会变得复杂。您可以为每个复选框存储一个隐藏字段。但是,可能有其他方法可以做到这一点。