1

各タグに次のような属性がある小さなドキュメントがあります

keep="true"

この属性が設定されていないこれらのタグのinnerHTML全体を繰り返して<body></body>削除する(タグ自体も削除する)にはどうすればよいですか。

可能であれば、jQueryを使用したいと思います。

4

2 に答える 2

2

:not()セレクターをAttribute Equalsセレクターと組み合わせることができます。

$(":not([keep='true'])").remove();

または、マークアップのセマンティクスに応じて、単純なHas Attributeセレクターを使用することもできます。

$(":not([keep])").remove();

編集:一致した要素を削除してその内容を保持したい場合は、代わりにchildren()unwrap()にチェーンできます。

$(":not([keep])").children().unwrap();
于 2012-07-28T11:54:25.930 に答える
1

keepは有効な属性ではありません。属性を使用して、次のことdata-*を試してください。

$('*:not([data-keep="true"])').empty()

$('div:not([data-keep="true"])').empty()
于 2012-07-28T11:57:07.803 に答える