Fügen Sie CSS-Attribute mit JavaScript zum Element hinzu
Lesezeit: 3 Minuten
Daniel Gustavson
Ich möchte meinem Element CSS-Attribute hinzufügen, aber meine aktuelle Lösung verliert alle vorherigen Attribute, die sich auf das Element ausgewirkt haben.
function checkNr(id) {
var value = document.getElementById(id).value;
if (parseFloat(value) == NaN) {
document.getElementById(id).setAttribute("style", "border:2px solid red; background-color: rgb(255, 125, 115);");
}
else {
document.getElementById(id).setAttribute("style", "border:default; background-color: rgb(255, 255, 255);");
}
}
Vor Verwendung dieser Methode hatte das Element bereits die Attribute:
float: left;
width: 50px;
Danach verliert das Element diese Attribute, sodass nur noch die spezifischen Attribute aus der JavaScript-Methode übrig bleiben. Ich möchte also Attribute hinzufügen, ohne sie zu ersetzen.
adeneo
Wenn Sie das Stilattribut so setzen, wird das Attribut überschrieben und zuvor festgelegte Stile entfernt.
Was Sie wirklich tun sollten, ist, die Stile direkt festzulegen, indem Sie stattdessen die Eigenschaft style ändern:
function checkNr(id) {
var elem = document.getElementById(id),
value = elem.value;
if (parseFloat(value) == NaN) {
elem.style.border="2px solid red";
elem.style.backgroundColor="rgb(255, 125, 115)";
} else {
elem.style.border="none";
elem.style.backgroundColor="rgb(255, 255, 255)";
}
}
Das ist keine JavaScript-Funktion, das ist eine jQuery-Funktion.
– Wojciech Maj
11. Dezember 2015 um 12:34 Uhr
Dies sollte nicht mit dieser Menge negativer Antworten bestraft werden, es ist ein netter Weg, vielleicht ist es kein Javascript, aber wenn jemand vorschlägt, die Antwort zu bearbeiten und die Spezifikation hinzuzufügen, die JQuery ist. Es könnte vielen Menschen helfen.
– Dayan Ruiz
22. September 2019 um 14:16 Uhr
Dies ist kein Javascript, aber diese Frage wurde 89.000 Mal aufgerufen. Ich habe dafür gestimmt, da dies anderen definitiv helfen kann
– sam1370
6. September 2020 um 3:06 Uhr
Das ist keine JavaScript-Funktion, das ist eine jQuery-Funktion.
– Wojciech Maj
11. Dezember 2015 um 12:34 Uhr
Dies sollte nicht mit dieser Menge negativer Antworten bestraft werden, es ist ein netter Weg, vielleicht ist es kein Javascript, aber wenn jemand vorschlägt, die Antwort zu bearbeiten und die Spezifikation hinzuzufügen, die JQuery ist. Es könnte vielen Menschen helfen.
– Dayan Ruiz
22. September 2019 um 14:16 Uhr
Dies ist kein Javascript, aber diese Frage wurde 89.000 Mal aufgerufen. Ich habe dafür gestimmt, da dies anderen definitiv helfen kann
– sam1370
6. September 2020 um 3:06 Uhr
12293500cookie-checkFügen Sie CSS-Attribute mit JavaScript zum Element hinzuyes