Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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 使用id变量的“querySelectorAll”上的选择器无效_Javascript - Fatal编程技术网

Javascript 使用id变量的“querySelectorAll”上的选择器无效

Javascript 使用id变量的“querySelectorAll”上的选择器无效,javascript,Javascript,我有一个通过变量传递的动态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.querySelectorA

我有一个通过变量传递的动态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中吗?

两件事:

去掉选择器中的双引号 添加将空白替换为空白。在您的中,的选择器可用。 您应该使用此选择器获得正确的结果:

document.querySelectorAll('#' + dataID + '.is-available');
更新:

不清楚是要选择具有指定ID的元素的所有子元素,还是选择具有指定ID和类的所有元素。保留空白并添加。如果要选择子图元,则“到”可用。按如下方式编写代码:

document.querySelectorAll('#' + dataID + ' .is-available');
两件事:

去掉选择器中的双引号 添加将空白替换为空白。在您的中,的选择器可用。 您应该使用此选择器获得正确的结果:

document.querySelectorAll('#' + dataID + '.is-available');
更新:

不清楚是要选择具有指定ID的元素的所有子元素,还是选择具有指定ID和类的所有元素。保留空白并添加。如果要选择子图元,则“到”可用。按如下方式编写代码:

document.querySelectorAll('#' + dataID + ' .is-available');

去掉这些-即var x=+dataID+'is available';因为字符串paragration-1.is available是有效的,但是字符串paragration-1.is available不是有效的,但是从您显示的错误来看,代码与您声称的不完全一样-var x='+dataID+'is available';将导致类似第1段的内容可用,但错误是第1段可用无效,请注意,它需要可用,而不仅仅是可用-即var x=+dataID+“可用”;因为字符串paragration-1.is available是有效的,但是字符串paragration-1.is available不是有效的,但是从您显示的错误来看,代码与您声称的不完全一样-var x='+dataID+'is available';将导致类似于第1段的内容可用,但错误是第1段可用无效,请注意,它需要可用,而不仅仅是可用在错误处。。。看看代码。。。查看代码如何不可能产生错误。在帖子中,它是否说可用的不是id的子项?查看错误。。。看看代码。。。查看代码如何不可能产生错误。在帖子中,它在哪里说IsAvailable不是id的子项?