2013-02-18 87 views
1

我有這樣的JS代碼:的jQuery找到img標籤,並從它那裏得到SRC

var imgJPG = jQuery('img[src$=".jpg"]', '<div>' + 
      fullCode + '</div>').attr('href'); 

然而,它似乎並沒有拿起圖像的src? fullCode是HTML源代碼。

的HTML:

<strong><span style="font-size: small;"> 
<img class="alignleft" title="ASHE" src="http://www.website.org/san-logo.jpg" 
alt="" width="198" height="192" />Design (D) is an at the Annual Conference, 
held July 15-18, 2012 in San, Florida.</span></strong> 

我這麼想嗎?

+0

你在.attr('src')尋找.attr('href')? – MarkSmits 2013-02-18 16:57:18

+0

你是對的,馬克。 – StealthRT 2013-02-18 17:04:45

回答

0

你retreveing而不是「src」中

var imgJPG = jQuery('img[src$=".jpg"]', '<div>' + fullCode + '</div>').attr('src'); 
+0

是的,只是看到了!哈謝謝martriay! – StealthRT 2013-02-18 16:58:49

1

「HREF」難道你正在尋找href當你需要實際的屬性是src

+0

Src和yep只是看到了!謝謝帕迪 – StealthRT 2013-02-18 16:59:17

2

jQuery文檔不會說明它支持您正在使用的情況。 jQuery()的第二個參數是一個上下文參數(根據jQuery documentation)可以是DOM元素,文檔或jQuery對象。 jQuery並沒有說它支持它作爲一個HTML字符串。

你應該首先需要加載該字符串轉換成一個jQuery對象,以便它被變成實際的DOM元素是這樣的:

var imgJPG = jQuery('img[src$=".jpg"]', jQuery('<div>' + 
     fullCode + '</div>')).attr('src'); 

另外,如果你想.src屬性,這是該屬性應檢索而不是.href

+0

它現在正常工作,雖然現在這樣做在OP中的方式。 – StealthRT 2013-02-18 17:03:45

+0

@StealthRT - 事實證明,jQuery將爲上下文處理一個字符串,但沒有記錄這樣做。如果你這樣做,你就依賴於未來可能會改變的未公開的特徵。將第二個參數封裝在jQuery調用本身並遵循記錄的接口會更安全。 – jfriend00 2013-02-18 18:42:51

1

嘗試......

var imgJPG = jQuery('<div>' + fullCode + '</div>').find('img[src$=".jpg"]').attr('src'); 

,創建一個div元素,使用附帶的HTML,然後執行find來獲得圖像。最後,獲取圖像src

+0

明白了,謝謝阿徹! :o) – StealthRT 2013-02-18 17:04:09

+0

很高興幫助隊友:) – Archer 2013-02-18 17:05:05