これは私のhtmljquery:divを除外するにはどうすればいいですか?
loaded-data = "
<div id='content'>
<div id='1'></div>
<div id='2'></div>
<div id='3'></div>
</div>"
var myHtml = $(data).find('#content').html(); // i get all 3 divs
が何であるかを私はdiv要素3をエクスクルードしたい場合は?
これは私のhtmljquery:divを除外するにはどうすればいいですか?
loaded-data = "
<div id='content'>
<div id='1'></div>
<div id='2'></div>
<div id='3'></div>
</div>"
var myHtml = $(data).find('#content').html(); // i get all 3 divs
が何であるかを私はdiv要素3をエクスクルードしたい場合は?
まず、ID番号を数字で開始することをお勧めします。それは私の初期のVB6プログラミングの日のホールドオーバーかもしれませんが、私はいつもitem1
とitem2
のようなIDを作っています。つまり、最初の2つのdivを選択したい場合は、
$('#content #item1, #content #item2')
のようにしてください。内側のdivのIDがわからない場合は、適切な解決方法が常に有効です。さらに組み込みの場合は、children
メソッドでクラスを指定することもできます。
$('#content').children('div').slice(0, 2);
-1それは答えていない "除外id = 3" – Francesco
あなたの質問は、あなたが文字列について話していることを暗示しているようです。その場合は、slice()
(docs)メソッドの最後のものを参照して、一致するセットから不要なものをchildren()
(docs)とremove()
(docs)に選択します。
end()
(docs)メソッドを使用して、最初の要素に戻ります。
var myHtml = $(data).children().slice(-1).remove().end().end().html();
EDIT:私はあなたが投稿HTML文字列はHTMLのより大きなビットの小さい一部である場合、あなたはおそらく必要があることに注意したいです.children()
の前に.find('#content')
を追加してください。
多分? var myHtml = $(data).contents()。find( "#content")。not( "#3").html();
私の質問はもっと良いと思います:どうすれば最初の2 divs htmlだけを選択できますか? – Francesco
質問のコードが矛盾しています。検証するために、 'loaded-data'は文字列ですか?そして、 'data'変数は同じ文字列を参照していますか? – user113716
また、最後の 'div'を除外したHTML文字列を取得することを明確にしてください。あなたの意図は明確ではありません。 – user113716