I am trying to display a sensor value using html/ajax. This works as expected so far, however I want the text color to change according to the value. for example
if value < 50 then fontcolor= blue
if value >49 then fontcolor = red
is that at all possible?
<p style="color:blue; position: absolute; top: 810px; width: 100px; padding-left: 340px;" id="ofen_VL">0</p>
<script>
setInterval(function() {
// Call a function repetatively with 10 Second interval
getData();
}, 10000); //10sec
function getData() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("ofen_VL").innerHTML =
this.responseText;
}
};
xhttp.open("GET", "ofen_VL.txt", true);
xhttp.send();
}
</script>
CodePudding user response:
Add to the response your condition. Something like:
if (this.readyState == 4 && this.status == 200) {
document.getElementById("ofen_VL").innerHTML = this.responseText;
if (Number(this.responseText) > 50) {
document.getElementById("ofen_VL").setAttribute('style', 'color: blue;');
}
else {
document.getElementById("ofen_VL").setAttribute('style', 'color: red;');
}
}