簡體   English   中英

選擇除特定子項之外的jquery元素

[英]Select jquery elements except specific children

這是一個簡單的問題,但是,在我發現的任何問題中,我都沒有找到明確的答案。 我針對特定問題修改了JSFiddle

我得到了這個小代碼:

<ul>
    <li id='one'>Element 1</li>
    <li id='two'>Element 2</li>
    <li id='three'>Element 3</li>
    <li id='four'>Element 4</li>
    <li id='five'>Element 5</li>
</ul>

並且此腳本應返回 ul元素(第一個li除外):

$(function(){
    $("ul").not($('#one'))
});

相反,它將刪除每個li。 我做錯了什么?

編輯:換句話說,我想選擇一個選擇器,而不刪除實際元素(=變量內)

<ul>
    <li id='two'>Element 2</li>
    <li id='three'>Element 3</li>
    <li id='four'>Element 4</li>
    <li id='five'>Element 5</li>
</ul>

內容: http : //jsfiddle.net/LVUMs/13/

采用

 $("ul li").not($('#one')).remove(); 

DEMO

要么

 $("ul li:not(#one)").remove(); 

演示2

編輯

你需要

 var ulexceptOneLi = $("ul li:not(#one)"); 

要么

 var ulexceptOneLi = $("ul li").not($('#one')); 

試試這個代碼:

小提琴

$(function(){
    $("ul>li").not($('#one')).empty();
});

假設您想讓ul發揮作用:

$("ul li#one").remove();

這是一個小提琴 ...

如果要返回一個ul元素,其中包含已刪除的元素,請嘗試以下操作:

function do_crazy_thing(){

  var removed = $("ul li#one").remove();

  return $('<ul></ul>').append(removed);

}

do_crazy_thing();

這是另一個小提琴 ...

這里是你將如何讓新的追加ul元素對身體...

演示小提琴

根據您的問題,您的預期輸出為:

<ul>
    <li id='two'>Element 2</li>
    <li id='three'>Element 3</li>
    <li id='four'>Element 4</li>
    <li id='five'>Element 5</li>
</ul>

檢查演示。

編輯:

$(function(){
    var removed = $("ul li:not(#one)");
});

要么

var op = $("ul :not(#one)");

請嘗試以下JS代碼

$(function(){
   var test= $("ul li").remove("#one");
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM