detach( selector )

jQuery API の detach( selector ) は、selectorにマッチした要素を削除するメソッド。要素に関連付けられているすべてのjQueryデータは保持し続ける。

要素に関連付けられているすべてのjQueryデータも削除したい場合は、remove( selector )を使う。

detach()のページに、removeとdetachの比較サンプルがある。

記述方法

jQuery( セレクター1 ) . detach( セレクター2 );

「セレクター1」及び「セレクター2」の両方にマッチする要素を削除する。

記述例

jQuery( '.jquery-sample' ) . detach( ':contains("サンプル")' );

クラス名が「jquery-sample」で、尚且つ、コンテンツに「サンプル」を含む要素を削除する。

実装例(サンプル)

  • 項目1
  • 項目2
  • 項目3
  • 項目4
  • 項目5

実装例(サンプル)の動作について

「項目2を削除」ボタンをクリックすると、項目2を削除する。

「項目4を削除」ボタンをクリックすると、項目4を削除する。

実装例(サンプル)のソースコード

JavaScript

<script>
<!--
jQuery( function() {
    jQuery( '#jquery-sample-detach-button-2' ) . click( function () {
        jQuery( '#jquery-sample-detach-ul li' ) . detach( ':contains("2")' );
    } );
    jQuery( '#jquery-sample-detach-button-4' ) . click( function () {
        jQuery( '#jquery-sample-detach-ul li' ) . detach( ':contains("4")' );
    } );
} );
// -->
</script>

CSS

<style type="text/css">
<!--
#jquery-sample-detach {
    width: 300px;
    margin: 10px;
    padding: 20px;
    background-color: pink;
    border: 1px solid gray;
    border-radius: 10px;
}
-->
</style>

HTML

<div id="jquery-sample-detach">
    <p>
        <button id="jquery-sample-detach-button-2">項目2を削除</button>
        <button id="jquery-sample-detach-button-4">項目4を削除</button>
    </p>
    <ul id="jquery-sample-detach-ul">
        <li>項目1</li>
        <li>項目2</li>
        <li>項目3</li>
        <li>項目4</li>
        <li>項目5</li>
    </ul>
</div>

スポンサード リンク

カテゴリー: API, DOM削除, DOM操作, JavaScript, jQuery タグ: パーマリンク