开发者

checkbox.checkchanged event question. How do I find out which Checkbox was checked/unchanged

开发者 https://www.devze.com 2023-03-17 09:40 出处:网络
I\'m using a Repeater: <form id=\"form1\" runat=\"server\"> <div> <asp:Repeater ID=\"repeater\" runat=\"server\" OnItemDataBound=\"repeater_ItemDataBound\">

I'm using a Repeater:

<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=开发者_JAVA百科"server" Text="Click" onclick="btn_Click" />
    </div>
    </form>

I'm handling onCheckedChange however how can I find out which checkbox was clicked? Thanks in advance!


You can try

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


Maybe you should redesign your UI architecture, as it's not acceptable to cause a full post back only for a change of a CheckBox (which is a Boolean parameter). I think you can use ajax here:

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

精彩评论

暂无评论...
验证码 换一张
取 消