Javascript循环获取选中复选框的名称

标签 javascript jquery checkbox

我有 HTML 来显示通过循环选中的复选框:

<!DOCTYPE html>

<html>
    <head>
        <title></title>
        <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
    </head>

    <body>
        <form>
            <input type="checkbox" name="bla_bla1" id="checkbox_1" onchange="getName();"/>
            <input type="checkbox" name="bla_bla2" id="checkbox_2" onchange="getName();"/>
            <input type="checkbox" name="bla_bla3" id="checkbox_3" onchange="getName();"/>
        </form>     
        <span id="checkboxConfirm_1"></span>
        <span id="checkboxConfirm_2"></span>
        <span id="checkboxConfirm_3"></span>

        <script>            
            function getName(){
                for(i = 1; i<4; i++){
                var a = "#checkbox_".concat(i.toString()) ;
                var b = "#checkboxConfirm_".concat(i.toString());               

                if ((a).is(":checked")) {
                    $(b).text($(a).attr("name"));
                } else {
                    $(b).text('');
                }
            }
            }
        </script>   
    </body>
</html>

但是 Javascript 不起作用。请帮我解决问题。

最佳答案

不要对每个复选框都使用 onChange 并且无需使用 for 循环使用 css 的正则表达式选择器,它将解决您的问题。

看这个例子:http://jsfiddle.net/kevalbhatt18/gpdjoyxx/1/

$('input[type="checkbox"]').change(function () {
    var index = $(this).index();
    console.log(index)
    console.log($("span[id^=checkboxConfirm]").eq(index))
    if ($(this).is(':checked')) {
        $("span[id^=checkboxConfirm]").eq(index).html($(this).attr("name"));
    } else {
        $("span[id^=checkboxConfirm]").eq(index).html('');
    }


})

关于Javascript循环获取选中复选框的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31107397/

相关文章:

javascript - 当鼠标经过按钮时,如何使用 onmouseover 和 onmouseout 隐藏和取消隐藏按钮?

javascript - 无法居中图像

javascript - jQuery 在多维数组中查找/设置对象时遇到问题

c# - 如何使用 jquery 在 MVC 中发布 View 模型

javascript - 如何在输入复选框中显示 php 变量

javascript - 页面加载时 jQuery 选项卡闪烁 (FOUC)

javascript - 如何将此字符串转换为多维 JavaScript 数组

javascript - 如何查明某些 javascript 代码是否被实际使用?

javascript - 复选框点击事件触发两次

java - Wicket:Checkgroup 可以启用 Ajax 吗?