我有一个已通过变量传递的动态ID。不幸的是,当尝试将其引用到querySelectorAll
中时,出现错误:
Failed to execute 'querySelectorAll' on 'Document':'#paragraph-1 .is-available"' is not a valid selector.
我的代码在下面
var x = ('"#' + dataID + ' is-available"');
var test = document.querySelectorAll (x);
console.log(test);
当我查看控制台日志时,它会将其正确输出到:
#paragraph-1 .is-available
关于如何将变量引用到querySelectorAll
中的任何想法?
答案 0 :(得分:5)
两件事:
.
的选择器中用is-available
替换空白。使用该选择器,您应该获得正确的结果:
document.querySelectorAll('#' + dataID + '.is-available');
更新:
不清楚是要选择具有指定ID的元素的所有子元素,还是要选择具有指定ID和类的所有元素。保留空白,如果要选择子元素,请将.
添加到is-available
。编写代码如下:
document.querySelectorAll('#' + dataID + ' .is-available');