Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.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 getElementsByClassName返回数组,但某些成员未定义_Javascript_Arrays - Fatal编程技术网

Javascript getElementsByClassName返回数组,但某些成员未定义

Javascript getElementsByClassName返回数组,但某些成员未定义,javascript,arrays,Javascript,Arrays,我使用document.getElementsByClassName('pattern-checkbox')在这里获取patterns数组 有没有建议为什么有些元素是未定义的?例如,我可以看到DOM中存在25模式复选框 我能想到的唯一不寻常的事情是,这些输入字段不可见,而是在搜索时关闭的下拉菜单的一部分。这是MS Edge browser调试器控制台中的一个错误。Chrome的结果不同。您的GetElementsByCassName将返回文档/页面中的所有元素-可见或不可见。如果页面中有未定

我使用
document.getElementsByClassName('pattern-checkbox')
在这里获取
patterns
数组

有没有建议为什么有些元素是未定义的?例如,我可以看到DOM中存在
25模式复选框


我能想到的唯一不寻常的事情是,这些
输入
字段不可见,而是在搜索时关闭的下拉菜单的一部分。

这是MS Edge browser调试器控制台中的一个错误。Chrome的结果不同。

您的GetElementsByCassName将返回文档/页面中的所有元素-可见或不可见。如果页面中有未定义的元素,您可以过滤掉未定义的元素,或者通过首先获取特定元素进行搜索来定位特定区域。谢谢,@JoshAdams。我知道我可以限制范围,或者检查未定义的元素,但是我试图理解现有dom元素是如何未定义的,比如我上面的
25 pattern checkbox
。这被列为未定义的,但它肯定是我需要检查的字段之一。啊,很抱歉!您什么时候执行脚本?您是否在等待dom首先完全加载?看起来输入标签没有设置值?是的,Chrome中的结果不同!稍后我将添加一个答案。元素并不是真正未定义的,请注意,它显示了它们的ID。这显然只是一个控制台故障。