【发布时间】:2019-05-09 11:20:20
【问题描述】:
我试图仅获取数组中具有 srcA 的特定 src 的图像的父按钮 ID。任何帮助表示赞赏。
var images = document.getElementById('con').getElementsByTagName('img');
var myImg = [];
for (var i = 0; i < images.length; i++) {
if (images[i].src == "srcA")
myImg.push(images[i]);
alert(images[i].parent.id);
}
<div id="con">
<button id="ba"><img id="sa" src="srcA"></button>
<button id="bb"><img id="sb" src="srcB"></button>
<button id="bc"><img id="sc" src="srcC"></button>
<button id="bd"><img id="sd" src="srcD"></button>
<button id="be"><img id="se" src="srcE"></button>
<button id="bf"><img id="sf" src="srcF"></button>
</div>
我收到一个错误 images[i].parent 未定义
请不要使用 jQuery。
【问题讨论】:
-
document.querySelector('#con img[src="srcA"]') -
试试
parentNode(不是parent) -
@Scrimothy parentNode 确实返回了 id。谢谢你,但它仍然返回整个数组,而不仅仅是特定的源。我试图为包装特定图像源的按钮获取一个 id。
-
@HereticMonkey 警报问题是次要的,主要问题是
if没有包装两个命令和.src产生完整的URL。所以不是重复的imo。
标签: javascript html arrays