How to remove all CSS classes using jQuery/JavaScript?
而不是为元素可能具有的每个单独单独调用
jQuery和原始JavaScript都可以工作。
1 | $("#item").removeClass(); |
不带参数调用
您也可以使用(但不一定推荐,正确的方法是上面的方法):
1 2 3 | $("#item").removeAttr('class'); $("#item").attr('class', ''); $('#item')[0].className = ''; |
如果你没有jQuery,那么这将是你唯一的选择:
1 | document.getElementById('item').className = ''; |
如果没有指定任何特定内容,请挂起,不删除Class()默认删除所有类?所以
1 | $("#item").removeClass(); |
将自己做...
只需将真实DOM元素的
1 | $('#item')[0].className = ''; // the real DOM element is at [0] |
编辑:其他人说只是调用
1 | $("#item").removeClass(); |
当然。
1 2 3 | $('#item')[0].className = ''; // or document.getElementById('item').className = ''; |
嘿,来找寻找类似的答案。
然后它打了我。
删除特定类
1 | $('.class').removeClass('class'); |
假设元素有class ="class another-class"
最短的方法
1 | $('#item').removeAttr('class').attr('class', ''); |
你可以尝试一下
1 2 3 | $(document).ready(function() { $('body').find('#item').removeClass(); }); |
如果您必须访问没有类名的元素,例如您必须添加新的类名,您可以这样做:
1 2 3 | $(document).ready(function() { $('body').find('#item').removeClass().addClass('class-name'); }); |
我在我的项目中使用该函数来删除并在html构建器中添加类。祝好运。
1 | $('#elm').removeAttr('class'); |
"榆树"中不再存在类别。
我喜欢使用原生js这样做,相信与否!
1。
1 2 3 4 5 | // remove all items all class const items = document.querySelectorAll('item'); for (let i = 0; i < items.length; i++) { items[i].className = ''; } |
2。
1 2 3 | // only remove all class of first item const item1 = document.querySelector('item'); item1.className = ''; |
jQuery的方式
<5233>
试试
例如:
1 2 3 4 5 | var nameClass=document.getElementsByClassName("clase1"); console.log("after", nameClass[0]); $(".clase1").removeClass(); var nameClass=document.getElementsByClassName("clase1"); console.log("before", nameClass[0]); |
1 2 | <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> I am Div with class="clase1" |
由于并非所有版本的jQuery都是相同的,因此您可能会遇到我所做的相同问题,即调用$("#item")。removeClass();实际上并没有删除该类。 (可能是个bug)
更可靠的方法是简单地使用原始JavaScript并完全删除class属性。
1 | document.getElementById("item").removeAttribute("class"); |
让我们用这个例子。也许您希望您网站的用户知道某个字段是有效的,或者需要通过更改字段的背景颜色来引起注意。如果用户点击重置,那么您的代码应该只重置具有数据的字段,而不必费心遍历页面上的每个其他字段。
This jQuery filter will remove the class"highlightCriteria" only for
the input or select fields that have this class.
1 2 3 4 5 | $form.find('input,select').filter(function () { if((!!this.value) && (!!this.name)) { $("#"+this.id).removeClass("highlightCriteria"); } }); |
我有类似的问题。在我的情况下,应用了禁用的元素,aspNetDisabled类和所有禁用的控件都有错误的颜色。所以,我使用jquery在每个元素/控件上删除这个类我不会,一切正常,现在看起来很棒。
这是我删除aspNetDisabled类的代码:
1 2 3 4 5 6 7 | $(document).ready(function () { $("span").removeClass("aspNetDisabled"); $("select").removeClass("aspNetDisabled"); $("input").removeClass("aspNetDisabled"); }); |