$("#item").removeClass()
要素が持つ可能性のあるすべての単一のクラスを個別に呼び出す代わりに、特定の要素からすべてのCSSクラスを削除する単一の関数を呼び出すことができますか?
jQueryとraw JavaScriptの両方が機能します。
$("#item").removeClass()
要素が持つ可能性のあるすべての単一のクラスを個別に呼び出す代わりに、特定の要素からすべてのCSSクラスを削除する単一の関数を呼び出すことができますか?
jQueryとraw JavaScriptの両方が機能します。
回答:
$("#item").removeClass();
removeClass
パラメータなしで呼び出すと、アイテムのすべてのクラスが削除されます。
また、使用することもできます(ただし、必ずしも推奨されるわけではありません。正しい方法は上記の方法です)。
$("#item").removeAttr('class');
$("#item").attr('class', '');
$('#item')[0].className = '';
jQueryがない場合は、これがほとんど唯一のオプションです。
document.getElementById('item').className = '';
If a class name is included as a parameter, then only that class will be removed from the set of matched elements. If no class names are specified in the parameter, all classes will be removed.
api.jquery.com/removeclass
ちょっと待って、removeClass()は、何も指定されていない場合、デフォルトですべてのクラスを削除しないのですか そう
$("#item").removeClass();
独自にそれを行います...
className
実際のDOM要素の属性を''
(nothing)に設定するだけです。
$('#item')[0].className = ''; // the real DOM element is at [0]
編集:他の人々は、単に呼び出すだけでremoveClass
動作すると言っています-私はこれをGoogle JQuery Playgroundでテストしました:http ://savedbythegoog.appspot.com/ ? id=ag5zYXZlZGJ5dGhlZ29vZ3ISCxIJU2F2ZWRDb2RlGIS61gEM ...そしてそれは動作します。したがって、次のようにすることもできます。
$("#item").removeClass();
あなたは試すことができます
$(document).ready(function() {
$('body').find('#item').removeClass();
});
クラス名なしでその要素にアクセスする必要がある場合、たとえば新しいクラス名を追加する必要がある場合は、次のようにすることができます。
$(document).ready(function() {
$('body').find('#item').removeClass().addClass('class-name');
});
私は自分のプロジェクトでその関数を使用して、HTMLビルダーでクラスを削除および追加します。幸運を。
1。
// remove all items all class
const items = document.querySelectorAll('item');
for (let i = 0; i < items.length; i++) {
items[i].className = '';
}
2。
// only remove all class of first item
const item1 = document.querySelector('item');
item1.className = '';
$("#item").removeClass();
$("#item").removeClass("class1 ... classn");
で試す removeClass
例えば:
var nameClass=document.getElementsByClassName("clase1");
console.log("after", nameClass[0]);
$(".clase1").removeClass();
var nameClass=document.getElementsByClassName("clase1");
console.log("before", nameClass[0]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="clase1">I am Div with class="clase1"</div>
この例を使用してみましょう。多分あなたはあなたのウェブサイトのユーザーにフィールドが有効であることを知らせたいか、フィールドの背景色を変更することによって注意が必要です。ユーザーがリセットを押した場合、コードはデータのあるフィールドのみをリセットし、ページ上の他のすべてのフィールドをループする必要はありません。
このjQueryフィルターは、このクラスを持つ入力フィールドまたは選択フィールドに対してのみ、クラス「highlightCriteria」を削除します。
$form.find('input,select').filter(function () {
if((!!this.value) && (!!this.name)) {
$("#"+this.id).removeClass("highlightCriteria");
}
});
同様の問題がありました。私の場合、無効化された要素にaspNetDisabledクラスが適用され、無効化されたすべてのコントロールの色が間違っていました。したがって、私はjqueryを使用して、私が使用しないすべての要素/コントロールからこのクラスを削除しました。
これは、aspNetDisabledクラスを削除するための私のコードです。
$(document).ready(function () {
$("span").removeClass("aspNetDisabled");
$("select").removeClass("aspNetDisabled");
$("input").removeClass("aspNetDisabled");
});
attr()
バージョンはprop()
今ではいけませんか?