Javascript按名称获取子元素

Flu*_*yte 3 javascript dom children

我将一个var传递给el一个函数.el包含以前抓取的元素(使用getElementById),当我el在函数中的console.log 时,我得到以下内容:

在此输入图像描述

当我尝试抓取使用内部的元素时,问题出现了el:

el.getElementsByName('fname');
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Uncaught TypeError: Object #<HTMLDivElement> has no method 'getElementsByName'
Run Code Online (Sandbox Code Playgroud)

Poi*_*nty 14

getElementsByName()API是在document对象层级.它不是HTMLElement方法.

你可以querySelectorAll()改用:

var fnames = el.querySelectorAll('[name=fname]');
Run Code Online (Sandbox Code Playgroud)

但是,旧版浏览器不支持它.