我在最后一小时一直在玩这个,但是无法让它发挥作用。
我有一个reactJS组件,它呈现一个网格。渲染网格后,我需要在组件上做一些DOM工作。
需要检查一些复选框。在DOM可用后,如果我在控制台中运行它:
$('[name="checkbox0"]').prop('checked', true);
效果很好。
我需要迭代我的对象,并根据条件检查与否。
我的问题是如何使选择器动态化?如何使checkbox0动态化,因此我可以将其设置为checkbox1,checkbox5 ......等。
这是我最近一次尝试解决这个问题,并没有奏效:
this.state.rows.forEach(function (index, key, value){
var test = "'[name=" + "checkbox" + key + "]'" ;
if(index.selected){
//$('[name="checkbox0"]').prop('checked', true);
$(test).prop('checked', true);
}
});
答案 0 :(得分:2)
您正在尝试使用属性选择器,但语法在动态字符串
中是关闭的var test = '[name="checkbox' + key + '"]'
您使用""
包装整个字符串,其中只应包含属性值