代码之家  ›  专栏  ›  技术社区  ›  James Campbell

Javascript最大选中输入类型数复选框

  •  0
  • James Campbell  · 技术社区  · 15 年前

    pdf* 若要查看是否选中了5个以上的,请对该数字发出警报。

    我不想在其他没有名称的复选框上运行此操作 pdf格式* .

    提前谢谢。

    下面是我的复选框示例:

    <td><input type="checkbox" name="pdf14" value="2250"></td>
    
    <td><input type="checkbox" name="pdf15" value="2251"></td>
    
    <td><input type="checkbox" name="pdf16" value="2252"></td>
     
    <td><input type="checkbox" name="print" value="2253"></td> 
    

    <<<

    1 回复  |  直到 5 年前
        1
  •  1
  •   Matt user129975    15 年前
    var inputs = document.getElementsByTagName("input");
    var numSelected = 0;
    var current;
    
    for (var i=inputs.length;i--;) {
        current = inputs[i];
    
        if (current.type.toLowerCase() == "checkbox" && current.checked && current.name.indexOf("pdf") == 0) {
            current++;
        };
    };
    
    if (current > 5) {
        alert("You've got " + current + " selected! :(");
    }
    

    如果您碰巧使用了jQuery,那就很简单了

    var selectedPdfCheckboxes = $('input:checkbox[name^=pdf]');
    
    if (selectedPdfCheckboxes.length > 5) {
        alert("You've got " + selectedPdfCheckboxes.length + " selected! :(");
    }
    

    我使用的jQuery选择器( ^= )读作“start with”,所以不需要*等价物。

    jQuery代码将在任何地方执行,但是必须在 document.ready()

    $(document).ready(function () {
        $("#aForm").bind('submit', function (e) {
            var selectedPdfCheckboxes = $('input:checkbox[name^=pdf]');
    
            if (selectedPdfCheckboxes.length > 5) {
                alert("You've got " + selectedPdfCheckboxes.length + " selected! :(");
    
                e.preventDefault();        
            }
        });
    });