2012-06-25 83 views
0
<html> 
<head></head> 
<body> 
<div id="ctl00_ContentPlaceHolder1_ctl00_ctl01_Showcase"> 
<div style="width:100%;text-align:center;"><img src="http://www.xyz.com/aaa.gif" id="ctl00_ContentPlaceHolder1_ctl00_ctl01_loderImg" alt="Loading" /></div>  </div> 
<script> 
q= document.getElementById('ctl00_ContentPlaceHolder1_ctl00_ctl01_Showcase').childNodes[1].getAttribute('src').innerHTML; 

alert(q); 

</script> 
</body> 
</html> 

如何訪問img標籤的'src'屬性?即時消息上面的代碼它給出了空值,所以最新錯了?如何在javascript中訪問<img>標記的'src'屬性?

回答

7

您可以直接在您的圖片上使用src。此外,你不需要.innerHTML

演示:http://jsfiddle.net/ThinkingStiff/aU2H2/

document.getElementById('ctl00_ContentPlaceHolder1_ctl00_ctl01_loderImg').src; 

HTML:

<html> 
<head></head> 
<body> 
<div id="ctl00_ContentPlaceHolder1_ctl00_ctl01_Showcase"> 
    <div style="width:100%;text-align:center;"><img src="http://placekitten.com/100/100" id="ctl00_ContentPlaceHolder1_ctl00_ctl01_loderImg" alt="Loading" /></div>   
</div> 
<script> 
    q = document.getElementById('ctl00_ContentPlaceHolder1_ctl00_ctl01_loderImg').src; 
    alert(q); 
</script> 
</body> 
</html> 
0

首先,您不應該在末尾使用.innerHTML,因爲屬性沒有innerHTML數據。其次,JS在處理空白時如何處理孩子是非常脆弱的。我建議像別人指出的那樣通過ID來定位圖像。另外,您可以使用這樣的事情:

q= document.getElementById('ctl00_ContentPlaceHolder1_ctl00_ctl01_Showcase').getElementsByTagName("img")[0].getAttribute("src"); 

引用ctl00_ContentPlaceHolder1_ctl00_ctl01_Showcase節點,然後找到它下面的圖像。

0

隨着jQuery

var imgsrc = $("#ctl00_ContentPlaceHolder1_ctl00_ctl01_loderImg").attr("src");

jQuery是IMO的最可靠的方法。

+1

用戶沒有標記的jQuery中 – coolguy

+0

我建議使用jQuery對這種事情的問題 - 它處理得很好 – stackunderflow

+0

呀我們都知道最好的方式是jquery ..我也同意..但提問者想在javascript – coolguy

4
alert(document.getElementById('your_image_id').getAttribute('src')); 
相關問題