で検索I次のコードを持っている:
$.post(
url,
send_to,
function(data) {
console.log($(data).find("img");
}
);
私は、サーバーからいくつかの結果を取得し、その結果のHTMLコード内img
タグのsrc
値を見つけたいんだが、しかし、それは動作していません。
受信データにimg
タグをどのように検索できますか?
で検索I次のコードを持っている:
$.post(
url,
send_to,
function(data) {
console.log($(data).find("img");
}
);
私は、サーバーからいくつかの結果を取得し、その結果のHTMLコード内img
タグのsrc
値を見つけたいんだが、しかし、それは動作していません。
受信データにimg
タグをどのように検索できますか?
コードは正常に動作するはずです。 jQuery function($(data)
)は、有効なHTML文字列を(切り離された)ノードツリーに変換します。
find()
は、それが呼び出される要素または要素のコレクションの子孫を検索することに注意してください。 <img>
がHTMLの最上位にある場合は、代わりにfilter()
を使用してください。たとえば:<img>
がトップレベルにない場合
<!-- Returned HTML: -->
<p>Here's a nice image of a kitten:</p>
<img src="demonic_kitten.png" />
<p>Muhahahaha!</p>
/* JavaScript (callback function): */
var success = function(data) {
console.log($(data).filter("img");
};
は、返されたデータが有効なHTMLで、最初の場所で<img>
が含まれていることを確認します。
まさに!良い答え...例のHTMLは、すべてのeventualitiesに答えるのではなく、非常に役立つだろう;) –
フィルタはありがとうございます。見つけない:( – user1016265
data
変数にHTMLの内容が含まれているかどうかわからないと、どこが間違っているのか分かりにくいです。そうでない場合は
console.log($(data).attr("src"));
:あなたはそれだけで全く別のIMG
のためのあなたのIMG
タグを検索しようとしfind
を使用して、AJAX要求から返されていますIMG
タグだし、このように調整する必要があることを確認している場合はIMG
タグがHTMLに返されていて、別のタグがたくさんある場合は、DIV
タグのようなものでHTMLをラップすることをおすすめします。たとえば、次のような場合はJavaScriptを返します。
<p>Something</p>
<p>Something else</p>
<img src="something" />
<p>Something</p>
...むしろ、このような何かを返します:
<div>
<p>Something</p>
<p>Something else</p>
<img src="something" />
<p>Something</p>
</div>
...あなたの元のコードの仕事をするでしょう。
$.post(
url,
send_to,
function(data) {
console.log($(data).find("img");
},
"html"
);
・ホープ、このことができます:私はまた、あなたのjQueryのAJAXリクエストにdataType
オプションを追加することを考えるでしょう! :)
'data'変数に受け取っているコードの例を教えてください。 –