在html中,我有很多DIV的名字(是的,名字,而不是ID),分别是p001,p002,p003 ......就像这样:
<div id="pole" name="p001"><img src=""></div>
<div id="pole" name="p002"><img src=""></div>
<div id="pole" name="p003"><img src=""></div>
等...
在Javascript中,我定义了一个名为'pos'的变量,其中包含一个数字,现在:“284” 和一个应该将img src更改为“player.png”的函数。 我尝试了两种方法,但没有一种方法可以工作:
document.getElementsByName('p'+pos).innerHTML='<img src="player.png">';
和
document.getElementsByName('p'+pos).getElementsByTagName("img").src="player.png";
如何更改指定DIV中的img src?
答案 0 :(得分:4)
getElementsByName
返回元素列表,而不是单个元素,因此请尝试:
document.getElementsByName('p'+pos)[0].
getElementsByTagName("img")[0].src="player.png";
答案 1 :(得分:-1)
首先,我认为您应该在name
代码上切换id
和div
属性。您不能拥有多个具有相同ID的元素,但您可以拥有多个具有相同名称的元素。
<div name="pole" id="p001"><img src=""></div>
<div name="pole" id="p002"><img src=""></div>
<div name="pole" id="p003"><img src=""></div>
要解决您的问题,如果firstChild
始终是您div标签的第一个子项,则可以使用DOM的img
属性。
document.getElementById('p'+pos).firstChild.src="player.png";