5

私のa-tag(リンク)には、次のような画像であるinnerHTMLが含まれています。

.innerHTML = <img alt="hello world" src="/Content/Images/test.png">

altJQueryで属性のテキストを取得するにはどうすればよいですか?

4

3 に答える 3

10

あなたは本当にjQueryを必要としません。あなたが要素を持っているなら、あなたはこれをすることができます:

// lets call the anchor tag `link`
var alt = link.getElementsByTagName('img')[0].alt; // assuming a single image tag

属性はプロパティ(ほとんど)にマップされることを忘れないでください。プロパティまたは属性が変更されない限り、2つは同じデータを反映する必要があります(これにはエッジケースがありますが、ケースバイケースで処理できます)。

本当に属性が必要な場合は、

var alt = link.getElementsByTagName('img')[0].getAttribute('alt');

最後のシナリオは、画像タグが文字列としてのみ存在する場合です。

var str = '<img alt="hello world" src="/Content/Images/test.png">';
var tmp = document.createElement('div');
tmp.innerHTML = str;
var alt = tmp.getElementsByTagName('img')[0].alt;

jQueryを使用する必要がある場合(または単にそれを好む場合)、AlexanderとAshivardによって提供された他の回答が機能します。

注:私の答えは、完全性とより多くのオプションのために提供されました。OPがネイティブjsではなくjQueryソリューションを要求していることに気付きました。

于 2012-12-18T20:40:23.720 に答える
7

あなた$a<a/>要素であること。

jQueryを使用すると、次のことができます。

$("img", $a).first().attr("alt");

または、純粋なJavaScriptを使用します。

var $img = $a.getElementsByTagName("img")[0];
console.log($img.alt);

こちらをご覧ください

于 2012-12-18T20:34:57.357 に答える
1

これを使って。

var altName=$('a img').attr('alt');
于 2012-12-18T20:33:48.140 に答える