Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.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
Php 根据其值设置复选框_Php_Javascript_Json_Checkbox - Fatal编程技术网

Php 根据其值设置复选框

Php 根据其值设置复选框,php,javascript,json,checkbox,Php,Javascript,Json,Checkbox,我目前正在从事一个javascript和php项目。我有一个复选框数组,它具有相同的idchkCategory和名称chkCategory[]。然后让PHP返回一些包含各种类别的json,我想为json中的每个类别设置每个复选框选中的属性。唯一标识每个复选框的是值。也就是说,json可能有一个值MyCategory,因此应该设置值为MyCategory的复选框 我知道您可以对单个复选框使用$(“#myCheckBoxId”).attr(“checked”,true),但不确定如何对具有特定值的特

我目前正在从事一个javascript和php项目。我有一个复选框数组,它具有相同的id
chkCategory
和名称
chkCategory[]
。然后让PHP返回一些包含各种类别的json,我想为json中的每个类别设置每个复选框选中的属性。唯一标识每个复选框的是值。也就是说,json可能有一个值
MyCategory
,因此应该设置值为
MyCategory
的复选框

我知道您可以对单个复选框使用
$(“#myCheckBoxId”).attr(“checked”,true)
,但不确定如何对具有特定值的特定复选框执行此操作


谢谢你能提供的帮助

您可以在JQuery中使用标准CSS属性选择器。例如:

$("input[value=MyCategory]")
将选择具有属性
value=MyCategory
的输入标记。如果存在具有该值的不同类型的
输入
s,您也可以选择on
type=checkbox

$("input[type=checkbox][value=MyCategory]")

如果你知道索引,你可以

$("input[name='MyCategory']").eq(n).prop("checked", true);
如果您没有jQuery

document.getElementsByName("MyCategory")[n].checked = true;

在纯javascript中,它将如下所示:

​document.querySelector('input[value=checkboxValue]').checked = true;​​​​​​​​​​​​​​​​​​​​​​​​​​​​

其中,
checkboxValue
是复选框的值

在JavaScript中不能使用相同的ID。这是正确的-在多个位置使用相同的ID会导致意外和不可预测的结果。看看它对@null的username:P做了什么(我们以前见过面吗?我已经开过那个玩笑了吗?)@null,你可以,例如,
$('input[id=“someID”]”)
,但当然你不应该这样做,因为你不应该在HTML中首先有重复的id…@Lix当然,但是,如果没有其他具有该值的输入类型,上面的选择器将起作用——这取决于您需要有多大的选择性。