如何使用纯javascript添加或删除类

如何使用纯javascript添加或删除类,javascript,Javascript,我尝试使用此代码,但它对我无效 const element = document.getElementsByClassName("dropdown")[0]; if(total < 15){ element.classList.add("otherclass"); }else{ element.classList.remove("otherclass"); } const-element=document.getElementsByClas

我尝试使用此代码,但它对我无效

const element = document.getElementsByClassName("dropdown")[0];
    if(total < 15){
      element.classList.add("otherclass");
    }else{
      element.classList.remove("otherclass");
    }
const-element=document.getElementsByClassName(“下拉列表”)[0];
如果(总数<15){
element.classList.add(“其他类”);
}否则{
element.classList.remove(“其他类”);
}
我犯了个错误

<div ClassName="dropdown">
</div>

要通过JavaScript引用元素的
属性,需要使用属性

const element = document.getElementsByClassName("dropdown")[0];
if(total < 15){
  element.className+=" otherclass"; // Space before the string when there are other classes present.
}else{
  element.className.replace("otherclass", "");
}
const-element=document.getElementsByClassName(“下拉列表”)[0];
如果(总数<15){
element.className+=“otherclass”;//当存在其他类时,字符串前面的空格。
}否则{
element.className.replace(“otherclass”,即“”);
}
您可以将由空格分隔的字符串分解为数组,然后对类进行更多的控制,当然,在实现它之前,您必须将它们重新分解为字符串

尽管(在其他DOM管理库中)已经提供了这一功能

编辑

请参阅此JSFIDLE以获取一个工作示例


错误很明显…请在您有类名为“dropdown”的元素的地方添加HTML。阅读错误消息后,您认为
元素的值是多少?你认为这可能是为什么?你是在加载DOM后执行这个JS代码吗?你的HTML应该是'class'而不是'ClassName',假设是纯HTML。谢谢你的回复,我收到一个错误
ClassName
我在使用react JS你在问题中发布的JavaScript与react JS无关。请发布完整的错误消息。我在react js
TypeError:无法读取未定义的属性“className”
中使用此代码。这是导致错误的第一行代码<代码>GetElementsByCassName(“下拉列表”)[0]
返回未定义。这可能是由无效的HTML造成的。@csmckelvey很可能是正确的。如果代码不起作用,请参考我的编辑中的JSFIDLE。您需要确保元素在DOM中实例化。