2016-03-21 189 views
0

什麼是通過以下結構獲取img src值的正確方法。下面的代碼返回空白。fetch value img src jquery

JS斌(點擊笑臉):https://jsbin.com/lelaxam/edit?html,js,output

注意:當我刪除圖像周圍的A HREF標籤我收到圖片src,如果我把周圍IMG的A HREF標籤,我不接受IMG SRC

HTML:

<td class="sim-row-edit" data-type="testtest" style="padding-right:10px"> 
<a href="http://crezzur.com" target="_blank"> 
<img src="https://img.smileys.nl/152/winky.png" alt="" border="0" width="42" height="42" /> 
</a> 
</td> 

JQUERY:

if (big_parent.attr("data-type") == 'testtest') { 
$("#sim-edit-testtest .image").val(big_parent.children('img').attr("src")); 
$("#sim-edit-testtest .url").val(big_parent.children('a').attr("href")); 
+2

無選擇器的真正匹配什麼,你不能有一個元素與' adeneo

+0

Indead像@的ID adeneo說,當你看着我的jsbin時,你注意到了一個href版本的工作原理,img部分由於某種原因失敗。我已經搜索並注意到您需要使用find來查找子元素,但對我而言沒有成功。 – fungames

+0

@ ZakariaAcharki - bin被編輯,我直接從bin複製/粘貼HTML,然後它是' adeneo

回答

0

此代碼抓取並顯示IMG SRC & A HREF像你在這個例子中看到: https://jsbin.com/lelaxam/edit?html,js,output

這裏唯一的問題是抓住FIRST IMG SRC如果發現,我該如何選擇IMG SRC,我按下了?

$("#sim-edit-testtest .image").val($('img', 'a').attr("src")); 
$("#sim-edit-testtest .url").val(big_parent.children('a').attr("href")); 
0

您應該使用jQuery.data來獲取data-屬性的值,而不是jQuery.attr

一旦您成功選擇了圖像,就可以像上面一樣使用.attr('src')

雖然您的代碼有問題,但您試圖錯誤地獲取圖像。您的HTML代碼顯示:

<img id="sim-edit-testtest .image" src="https://img.smileys.nl/152/winky.png" alt="" border="0" width="42" height="42" /> 

因此$('#sim-edit-testtest .image').find('img')已經很好了。應該有#sim-edit-testtest.image之間沒有空格的選擇,因爲它不是一個孩子,它與 ID一個元素,沒有孩子img元素,它已經img元素。請嘗試下面的代碼。

if (big_parent.data('type') == 'testtest') { 
    $('#sim-edit-testtest.image').attr('src'); 
} 

說實話,在選擇有.image也有點毫無意義的ID應該已經是一個頁面內唯一的,所以可以進一步簡化爲:

if (big_parent.data('type') == 'testtest') { 
    $('#sim-edit-testtest').attr('src'); 
} 
+0

我試過了,仍然在嘗試你的代碼,但我並沒有真的在我的jsbin代碼中得到任何結果。 – fungames

+0

我認爲你通過測試這個代碼來對抗一場失敗的戰鬥。嘗試減少JSBin實驗中要測試的內容(或者使用JSFiddle),一旦解決了問題,您總是可以再次構建複雜性。還**縮進你的代碼!它可以幫助你可視化你正在使用的DOM樹。 – toomanyredirects

+0

我只是在https://jsbin.com/lelaxam/edit?html,js,output上的部分工作,但只有當我刪除A標籤,當我刪除它們顯示圖像src,如果我添加它只顯示href網址 – fungames

0

你必須使用它是這樣的:

$('#sim-edit-testtest img').attr('src');