首页 > 解决方案 > 如何在jQuery中获取下一个复选框选中的值

问题描述

我正在尝试实现自动更新我的 sql server 数据库中的一些列。我在一个表单中有几个 Dropbox 和 html 开关。我正在尝试获取这些元素的元素 ID 和选定值。

这是html标签:

                                <li class="list-group-item"><b>Market</b><asp:DropDownList ID="ddlRecruitingMarket" runat="server" CssClass="pull-right sidebar-controls action">
                                    <asp:ListItem Selected="True" Value="NA">Select One</asp:ListItem>
                                    <asp:ListItem>India</asp:ListItem>
                                    <asp:ListItem>Bangladesh</asp:ListItem>
                                    <asp:ListItem>Bhutan</asp:ListItem>
                                    <asp:ListItem>Myanmar</asp:ListItem>
                                    <asp:ListItem>Mauritius</asp:ListItem>
                                    <asp:ListItem>Nepal</asp:ListItem>
                                    <asp:ListItem>Maldivs</asp:ListItem>
                                    <asp:ListItem>Sri Lanka</asp:ListItem>
                                </asp:DropDownList>
                                </li>
                                <li class="list-group-item"><b>Do Not Call</b>
                                    <a class="pull-right">
                                        <label for="chkDoNotCall" class="switch action">
                                            <asp:CheckBox ID="chkDoNotCall" runat="server" /><span class="slider slider-red round"></span></label></a>
                                </li>
                                <li class="list-group-item"><b>Do Not Message</b>
                                    <a class="pull-right">
                                        <label for="chkDoNotMessage" class="switch action">
                                            <asp:CheckBox ID="chkDoNotMessage" runat="server" /><span class="slider slider-red round"></span></label></a>
                                </li>
                                <li class="list-group-item"><b>Do Not Email</b>
                                    <a class="pull-right">
                                        <label for="chkDoNotEmail" class="switch action">
                                            <asp:CheckBox ID="chkDoNotEmail" runat="server" /><span class="slider slider-red round"></span></label></a>
                                </li>

现在,我想要的是当我单击复选框时,我应该能够获取当前的复选框 id 和值,即 true 或 false。

请注意,我可以正确获取下拉列表,但不适用于复选框。

这是我的 jQuery 函数。

               $(".action").on("change", function () {
                    var elVal = "";
                    if ($(this).hasClass("switch")) {
                        var elmid = $(this).attr("for");
                        elVal = $(this).next("input:checkbox").is(":checked");
                    } else {
                        var elmid = $(this).attr("id");
                        elVal = $(this).val();
                    }
                    alert("Current Element: " + elmid + " | Value: " + elVal);
                });

请帮我解决这个问题。

提前致谢。

标签: jqueryasp.netcheckboxnext

解决方案


推荐阅读