Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript检查多个复选框?_Javascript_Arrays_Checkbox - Fatal编程技术网

如何使用JavaScript检查多个复选框?

如何使用JavaScript检查多个复选框?,javascript,arrays,checkbox,Javascript,Arrays,Checkbox,我有多个复选框 <div class="data"> <span> <input name="employee" type="checkbox" value="Alex"/> <label for="employee">Alex</label> </span> <span> <input name="employee" type="checkbox

我有多个复选框

<div class="data">    
    <span>
    <input name="employee" type="checkbox" value="Alex"/>
    <label for="employee">Alex</label>
    </span> 

    <span>
    <input name="employee" type="checkbox" value="Frank"/>
    <label for="employee">Frank</label>
    </span>    

    <span>
    <input name="employee" type="checkbox" value="Mark"/>
    <label for="employee">Mark</label>
    </span>
</div>

亚历克斯
直率的
做记号
如何找到所有选中的复选框并创建带有选中结果的json或数组?

尝试以下操作:

jQuery:

var selected = [];
$('.data input:checked').each(function() {
    selected.push($(this).val());
});
Javascript:

var checkboxes = document.getElementsByName('employee');
var selected = [];
for (var i=0; i<checkboxes.length; i++) {
    if (checkboxes[i].checked) {
        selected.push(checkboxes[i].value);
    }
}
var复选框=document.getElementsByName('employee');
所选var=[];

对于(var i=0;i使用
querySelectorAll

var checked = document.querySelectorAll('[name="employee"]:checked');
支持:IE9+

var elements=document.getElementsByName('employee');
应该返回所需元素的数组


如果您只想使用纯/香草JS,下面是一个示例:

HTML标题

<script type="text/javascript">
function getCheckedCheckboxesFor(checkboxName) {
    var checkboxes = document.querySelectorAll('input[name="' + checkboxName + '"]:checked'), values = [];
    Array.prototype.forEach.call(checkboxes, function(el) {
        values.push(el.value);
    });
    return values;
}
</script>

函数getCheckedCheckboxesFor(checkboxName){
var checkboxes=document.querySelectorAll('input[name=“”+checkboxName+”]:checked'),value=[];
Array.prototype.forEach.call(复选框、函数(el){
推送值(el值);
});
返回值;
}
HTML正文

<div class="data">    
    <span>
    <input name="employee" type="checkbox" value="Alex"/>
    <label for="employee">Alex</label>
    </span> 

    <span>
    <input name="employee" type="checkbox" value="Frank"/>
    <label for="employee">Frank</label>
    </span>    

    <span>
    <input name="employee" type="checkbox" value="Mark"/>
    <label for="employee">Mark</label>
    </span>

    <input type="button" onclick="alert(getCheckedCheckboxesFor('employee'));" value="Get Values" />
</div>

亚历克斯
直率的
做记号
JS Fiddle链接:

函数已选中(){
var items=getElementsByname('checkbox');
var selectedlist=[];

对于(var i=0;i如何检查分页时是否有复选框?如何检查是否已选中?
function checked(){

    var items=getElementsByname('checkbox');

    var selectedlist=[];

    for(var i=0; i<items.length; i++)       
    {
        if(items[i].type=='checkbox' && items[i].checked==true)                 
            selectedlist+=items[i].value+"\n";
    }

    alert(selectedlist);
}