如何在JavaScript中获取父元素具有指定ID的元素?
解决JavaScript获取指定父元素下特定name元素的问题
你的代码没生效主要有两个关键问题:
- 方法名拼写错误:不存在
getElementByName这个方法,正确的写法是getElementsByName(注意复数形式的Elements) - 返回值处理错误:
getElementsByName返回的是一个NodeList元素集合,不是单个元素,不能直接调用.innerHTML
方案一:修正getElementsByName的使用
因为你的结构里每个父div下只有一个匹配的p元素,所以可以通过索引获取集合中的第一个元素:
document.getElementById('1').getElementsByName("para")[0].innerHTML = "";
方案二:更简洁的querySelector(推荐)
使用CSS选择器语法直接定位目标元素,代码更直观,也不需要额外处理集合:
document.querySelector('#1 [name="para"]').innerHTML = "";
这里#1匹配ID为1的父div,[name="para"]匹配它下面name属性为para的子元素。
小提示
HTML里的ID尽量不要用纯数字(虽然HTML5允许),部分场景可能会有兼容问题,建议改成类似id="div1"这样的命名方式。
内容的提问来源于stack exchange,提问作者x7R5fQ
相关产品推荐
相关产品推荐

