使用JavaScript引用HTML元素:querySelector *之后的getElement *

时间:2016-02-02 12:09:19

标签: javascript html

JavaScript教科书中的任务:在page上找到包含“info [0]”名称的元素,该名称位于表单内,并带有“搜索人”名称。

我的解决方案的变体是:

document.querySelector('form[name="search-person"]').getElementsByName('info[0]')[0];

但是每次我在Firefox控制台中运行代码时都会弹出错误:

TypeError: document.querySelector(...).getElementsByName is not a function

任务的实际答案

document.querySelector('form[name="search-person"] [name="info[0]"]');

比我的简单,但我无法理解为什么我的版本会引发错误,因为我的上一个任务的相似代码 - 找到“搜索”表单中的第一个“输入”元素 - 工作正常:

document.querySelector('form[name="search"]').getElementsByTagName('input')[0];

1 个答案:

答案 0 :(得分:0)

  

但我无法理解为什么我的版本会引发错误,因为   我上一个任务的类似代码

正如错误本身所暗示的那样。

Element没有方法getElementsByName

document.querySelector返回一个元素。