2012-05-08 8 views
0

私はWordPressのプラグインでこのコードを使用して、ワードプレスメディアアップローダで選択した画像のsrcを返します。Domオブジェクトが唯一の要素だった場合、Jquery変数は未定義に戻ります

アップローダ画面から返された画像のみの場合、このコードは画像srcを返しません。

のjQueryコード:

window.send_to_editor = function(html) { 
alert(html); 
imgurlv = jQuery(html).find('img').attr('src'); 
alert(imgurlv); 
    jQuery(targetfield3).val(imgurlv); 
    tb_remove(); 
} 

例:アップローダーで返さ

コードは次のとおりです。

<a class="shutterset_" href='http://localhost/1/wp-content/gallery/bm/01.jpg' title=''><img src='http://localhost/1/wp-content/gallery/bm/thumbs/thumbs_01.jpg' alt='01' class='ngg-singlepic ngg-none' /></a> 

のimg srcが次のように返されます:http://localhost/1/wp-content/gallery/bm/thumbs/thumbs_01.jpg

しかし、もしアップローダーから返されるコード:

<img src='http://localhost/1/wp-content/gallery/bm/thumbs/thumbs_01.jpg' alt='01' class='ngg-singlepic ngg-none' /> 

jqueryのコードは、未定義を返します。

何が間違っていますか?

答えて

3

あなたはでそれをハック可能性:

imgurlv = jQuery("<div>" + html + "</div>").find('img').attr('src'); 

問題が子ども現在の要素のを見て '検索'、です。 2番目のケースでは、img要素がトップレベルであるため、子要素のどれもが見つからない場合はsrcプロパティがあります。

+0

ありがとうございます。働くありがとう – alhoseany

関連する問題