Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 替换类名_Javascript_Html_Css - Fatal编程技术网

Javascript 替换类名

Javascript 替换类名,javascript,html,css,Javascript,Html,Css,我在我的网站上插入了一个禁用的按钮,我希望在单击另一个启用的按钮时将其启用。我已经为它编写了代码 代码(具体化CSS) var btn=document.getElementById(“btn”) btn.addEventListener(“单击”,函数(){ document.getElementById(“btnn”).classList.replace(“btn已禁用”), “波浪效应波浪光btn”); }) 您的代码抛出了一个错误,因为classList.replace方法不

我在我的网站上插入了一个禁用的按钮,我希望在单击另一个启用的按钮时将其启用。我已经为它编写了代码

代码(具体化CSS)

var btn=document.getElementById(“btn”)
btn.addEventListener(“单击”,函数(){
document.getElementById(“btnn”).classList.replace(“btn已禁用”),
“波浪效应波浪光btn”);
})






您的代码抛出了一个错误,因为
classList.replace
方法不能包含多个类(实际上是空格)。要解决您的问题,您必须调用
classList。删除
classList。添加
方法

您更新的JS:

var btn = document.getElementById("btn")

btn.addEventListener("click", function(){

  // Check if element contains disabled class
  if (btn.classList.contains("disabled")) {
    // Removes disabled class
    btn.classList.remove("disabled");

    // Adds waves-effect and waves-light classes
    btn.classList.add("waves-effect", "waves-light"); 
  }

});
.replace()
只能用于将一个类替换为另一个类,不能给它多个类。如果要替换多个类,请使用
.remove()
.add()

HTML中的
id
属性中还有额外的空格
id=“btnn”
应该是
id=“btn”
。这导致
document.getElementById()
失败

var btn=document.getElementById(“btn”);
btn.addEventListener(“单击”,函数(){
document.getElementById(“btnn”).classList.remove(“禁用”);
document.getElementById(“btnn”).classList.add(“波浪效果”、“波浪光”);
})
。已禁用{
颜色:灰色;
}
.波浪效应{
颜色:黄色;
}
.波光{
背景颜色:蓝色;
}
跳过广告

按钮

替换为空格时,只能在字符串上发生

你应该更新你的HTML,它不可读,缺少几个结束标记。。。
var btn = document.getElementById("btnn");
btn.className =
btn.className.replace("btn disabled",
    "waves-effect waves-light btn");