checkbox.checkchanged事件问题.如何找出哪个复选框被选中/未更改

本文关键字:复选框 事件 checkchanged 问题 何找出 checkbox | 更新日期: 2023-09-27 18:01:12

我正在使用中继器:

<form id="form1" runat="server">
    <div>
        <asp:Repeater ID="repeater" runat="server" OnItemDataBound="repeater_ItemDataBound">
            <ItemTemplate>
                <tr>
                    <td>
                        <asp:CheckBox ID="checkbox" runat="server" AutoPostBack="false" OnCheckedChanged="Check_Clicked" data-id='<%# DataBinder.Eval(Container.DataItem, "ProfileID") %>'
                            Text="I agree" />
                    </td>
                    <td>
                        <asp:Label ID="lblProfileDesc" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "ProfileDesc") %>'></asp:Label>
                    </td>
                </tr>
                <br />
            </ItemTemplate>
        </asp:Repeater>
        <asp:Button ID="btn" runat="server" Text="Click" onclick="btn_Click" />
    </div>
    </form>

我正在处理CheckedChange,但是我如何才能发现哪个复选框被点击了?提前感谢!

checkbox.checkchanged事件问题.如何找出哪个复选框被选中/未更改

您可以尝试

CheckBox checkBox = (CheckBox)sender;
var id = checkBox.Attributes["data-id"];

也许你应该重新设计你的UI架构,因为只对CheckBox(这是一个布尔参数(进行更改是不可接受的。我认为你可以在这里使用ajax:

 $(function(){
     $('input[type=checkbox]').click(function(){
          // Initializing an ajax call here, and updating DOM based on response.
     });
 });