Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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_Jquery_Checkbox_Jquery Selectors - Fatal编程技术网

Javascript 如何使用值设置一组复选框?

Javascript 如何使用值设置一组复选框?,javascript,jquery,checkbox,jquery-selectors,Javascript,Jquery,Checkbox,Jquery Selectors,因此,我有一组复选框,例如: <input type="checkbox" id="cbl1" name="cbl" value="1" /> <input type="checkbox" id="cbl2" name="cbl" value="2" /> <input type="checkbox" id="cbl3" name="cbl" value="3" /> <input type="checkbox" id="cbl4" name="cbl"

因此,我有一组复选框,例如:

<input type="checkbox" id="cbl1" name="cbl" value="1" />
<input type="checkbox" id="cbl2" name="cbl" value="2" />
<input type="checkbox" id="cbl3" name="cbl" value="3" />
<input type="checkbox" id="cbl4" name="cbl" value="4" />
<input type="checkbox" id="cbl5" name="cbl" value="5" />
<input type="checkbox" id="cbl6" name="cbl" value="6" />
<input type="checkbox" id="cbl7" name="cbl" value="7" />
<input type="checkbox" id="cbl8" name="cbl" value="8" />
现在,如何使我的复选框组看起来像这样:

<input type="checkbox" id="cbl1" name="cbl" value="1" />
<input type="checkbox" id="cbl2" name="cbl" value="2" checked="checked" />
<input type="checkbox" id="cbl3" name="cbl" value="3" />
<input type="checkbox" id="cbl4" name="cbl" value="4" checked="checked" />
<input type="checkbox" id="cbl5" name="cbl" value="5" />
<input type="checkbox" id="cbl6" name="cbl" value="6" />
<input type="checkbox" id="cbl7" name="cbl" value="7" checked="checked" />
<input type="checkbox" id="cbl8" name="cbl" value="8" checked="checked" />


我是否必须使用两个for循环来执行此操作?在普通javascript或jquery中有没有一种方法不需要循环两次

从数组中创建选择器,并将其全部选中

$( '#cbl' + values.join(', #cbl') ).prop('checked', true);

这是使用ID,因为这是一种比值更好的选择元素的方法,如果仍要使用值,可以使用相同的概念

$( '[value="' + values.join('"], [value="') + '"]').prop('checked', true);

或者你可以过滤

$('input[type="checkbox"]').filter(function() {
    return $.inArray(this.value, values) != -1;
}).prop('checked', true);

从数组中创建选择器,并将其全部选中

$( '#cbl' + values.join(', #cbl') ).prop('checked', true);

这是使用ID,因为这是一种比值更好的选择元素的方法,如果仍要使用值,可以使用相同的概念

$( '[value="' + values.join('"], [value="') + '"]').prop('checked', true);

或者你可以过滤

$('input[type="checkbox"]').filter(function() {
    return $.inArray(this.value, values) != -1;
}).prop('checked', true);

var值=[“2”、“4”、“7”、“8”];
$('input[name=“cbl”]”)。val(值)

var值=[“2”、“4”、“7”、“8”];
$('input[name=“cbl”]”)。val(值)


Look ma,没有循环!:)+1按值选择,如果值是阵列中的值OK ma,则无循环!:)+1按值选择,如果值是阵列中的值,那么我实际上不知道这是可能的+哇,我真的不知道这是可能的+1.