我有一个通过变量传递的动态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
中吗?
两件事:
- 去掉选择器中的双引号
- 在
is-available
的选择器中添加并用.
替换空白
您应该使用此选择器获得正确的结果:
document.querySelectorAll('#' + dataID + '.is-available');
更新:
目前尚不清楚是选择具有指定ID的元素的所有子元素,还是选择具有指定的ID和类的所有元素。如果要选择子元素,则保留空白并将.
添加到is-available
。使您的代码如下:
document.querySelectorAll('#' + dataID + ' .is-available');