2011-01-26 12 views
16

jQueryを使用して、htmlボディのアンカータグを削除するにはどうすればいいですか?このラッパーdivは削除したいアンカータグの上にあります。jquery直接子要素を削除する

それは私がそれは私のラッパーで最初のアンカータグを削除

$("body").find("a:first-child").remove(); 

を使用する場合は

<body> 
    <div id="wrapper"> 
     <a id="not_me" href="#">hi</a> 
    </div> 

    <a id="remove_me" href="#">Remove Me</a> 

</body> 

のようなものであるdiv要素、すなわち、ID「not_me」との1、私はあることを、「remove_me」をしたいしながら、除去された。あなただけbodyの直接の子供をターゲットにしたいので、あなたがchildren()(docs)を使用

答えて

36
$("body").children("a:first").remove(); 

セレクタとして"a:first"を使用して、最初の<a>要素をターゲティングします。

first-child-selector(docs)であなただけのそれは(それがされていない)、その親の最初の子である<a>場合は買ってあげるためです。しかし、first-selector(docs)では、一致した最初の<a>が得られます。上記のように

$('body > a:first').remove(); 

同じ、代わりchildren()(docs)方法>child-selector(docs)を使用する:

代替は、1つのセレクタにすべてを置くことであろう。

+0

ああ!もう一度私を援助してください!私はちょうどそれが大好きです::p) – jAndy

+0

@jAndy:もう少しあなたのためのものがあります。 :o) – user113716

7

あなたが唯一の直接の子を検索するchildren()を使用すると、あなたが最初のものを削除する:firsteq(0)を使用することができます。

$("body").children("a").eq(0).remove(); 
4

は、なぜあなたはしないでください:

$("#remove_me").remove() 

をそれが間違っているかどうかわからない、私はまだ学んでいる:P

+0

それは正しいですが、私は感情を持っているのですが、例のためにOPがターゲットにされたのはどれかを示すためにIDを使用しただけでした。 :0) – user113716

+0

hmm大丈夫なので、子供たちはまずトリックをやるだろう。ありがとう:) – pavid

+0

申し訳ありませんが、id( "remove_me"など)は動的に生成されているので、あなたが提案した方法を使用することはできません応答のために – Prashant

関連する問題