0

WordPressプラグインでこのコードを使用して、WordPressメディアアップローダーでユーザーが選択した画像のsrcを返します。

アップローダー画面から返された画像のみの場合、このコードが画像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コードはundefinedを返します。

なにが問題ですか?

4

1 に答える 1

3

あなたはそれをハックすることができます:

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

問題は、「find」が現在の要素の子を調べることです。2番目のケースでは、img要素は最上位レベルであるため、その子のいずれにも検索するsrcプロパティがありません。

于 2012-05-08T07:40:45.000 に答える