2015-04-02 162 views
0

上獲取圖像src屬性從點擊事件我有一個div gettng點擊的(刪除按鈕),其位於img我的網頁上後。其他元素

 <div class="item"> 
      <img src="/media/BodyPart_e4fc6673-1476-42d2-a98d-947b0e79fd99/300/0" class="media-item"> 
      <div class="remove" title="Remove"></div> //getting clicked 
    </div> 

等click事件,我通過這個代碼訪問的IMG:

var img = $(this).prev("img.media-item"); 

那麼我想訪問的img

var extracted_string = img.src.match(/BodyPart[^\/]*/); 

src屬性,但得到img.src underfined

我該如何解決這個問題?

UPDATE

我只是看看,如果我將做到這一點$(this).prev("img.media-item").attr("src") - 我能得到src

但爲什麼var img = $(this).prev("img.media-item"); $(img).attr("src")不工作

回答

0

試試這一段代碼

var imgPath = $('.item img').attr('src'); 
0

合Ë你使用jQuery,然後嘗試:

var extracted_string = img.attr('src').match(/BodyPart[^\/]*/); 
1

在jQuery的一個乾淨的方式從.remove DIV點擊獲得img是這樣的:

$(".remove").click(function(e) { 
    var src = $(this).closest(".item").find(".media-item").attr("src"); 
}); 

做這種方式的優點即使佈局有所改變,它也能找到想要的圖像,所以它不依賴於元素的精確相對定位(使之比依賴於一個元素的技術更加穩定)。

這是jQuery的代碼,你是在樹的同一分支尋找另一種元素一個非常普遍的技術,效果很好,當有反覆項目組都具有相同的結構。點擊任何.remove項目可以在同一分支中的任何其他項目上操作。