JavaScript - 当满足 if/ elseif 条件时更改类
JavaScript - Change class when if/ elseif condition is fulfilled
我正在开发一个脚本,该脚本读取文本文件并根据.txt文件的内容更改div中的文本。
但这不是我的问题。我不想要纯文本,背景颜色应该根据满足 if/elseif/else 函数的条件而变化。
var client = new XMLHttpRequest();
client.open('GET', 'text.txt');
client.onreadystatechange = function checktxt() {
if(client.responseText =='not')
{
document.getElementById("response").innerHTML="Connect is working";
var boxgreen = document.querySelector("#response");
boxgreen.classList.add("green");
}
else if (client.responseText =='younger')
{
document.getElementById("response").innerHTML="Connect is working";
var boxgreen = document.querySelector("#response");
boxgreen.classList.add("green");
}
else
{
document.getElementById("response").innerHTML="Connect isn't working!";
var boxred = document.querySelector("#response");
boxred.classList.add("red");
}
}
client.send();
.green {
width: 140px;
height: 140px;
background: #68B267;
color: white;
}
.red {
width: 140px;
height: 140px;
background: #ec4f3e;
color: white;
}
<div id="response"></div>
我的第一次尝试是将"classList.add"添加到 if/else 函数中,但即使满足"if"条件,它也会将类更改为"红色",因为它已经最终设置好了。
我对javascript很陌生,没有ajax或jquery的经验,但也许这就是我正在寻找的。
如果代码已经运行,则需要删除已添加的类。 client.onreadystatechange = function checktxt() {
使用您的代码,您只需调用
boxgreen.classList.remove("red"); //or green for the other case
并且比它将起作用。
或者,您可以使用切换和简化代码,这样您就不会一遍又一遍地使用相同的行。
client.onreadystatechange = function() {
var isValid = client.responseText == 'not' || client.responseText == 'younger',
text = isValid ? "Connect is working" : "Connect isn't working!",
box = document.querySelector("#response");
box.innerHTML = text;
box.classList.toggle("green", isValid);
box.classList.toggle("red", !isValid);
}
相关文章:
- 通过js在新选项卡中有条件地打开url
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- jQuery-有条件地附加HTML
- 根据某些条件在视图之间切换
- 如何做到这一点,使代码在不传递条件后执行函数
- 有条件更新d3.js力图中节点的最佳方法
- javascript中的布尔条件
- Woocommerce产品选项有条件
- 基于两个条件退出While循环
- 有条件地在选项标记中应用布尔属性
- 使用javascript以HTML形式验证条件
- 聚合物0.5.5:核心列表中的条件模板和/或模板动态参考
- 带有多个elseif的Javascript if语句
- javascript对象操作:根据指定条件选择属性
- 这个条件语句的逻辑有问题
- ADF:有条件地加载javascript资源
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 为什么要对define.md和module.exports进行条件检查,以及条件何时通过
- JavaScript - 当满足 if/ elseif 条件时更改类
- 正则表达式的If-ElseIf-Else条件