Typecasting-Problem?
Danfix
- javascript
Hallö!
Folgendes Problem:
Das funktioniert wurderbar....
document.getElementById("K_indent_R_075").firstChild.style.setAttribute("color","#ff0000",false);
und das nicht....
inp_value = "K_indent_R_" + inp_value;
alert(inp_value); <-- Ausgabe "K_indent_R_075"
document.getElementById(inp_value).firstChild.style.setAttribute("color","#ff0000",false);
Das sieht ja wohl nach irgendeinem Typecasting-Problem aus...aber wie umgehe ich das? Versuche mit String(...) oder " liefen auch schon ins Leere!
Für Hilfe wäre ich dankbar!
Hallo,
Das funktioniert wurderbar....
document.getElementById("K_indent_R_075").firstChild.style.setAttribute("color","#ff0000",false);
Warum immer so kompliziert?
document.getElementById("K_indent_R_075").firstChild.style.color = "#ff0000";
und das nicht....
inp_value = "K_indent_R_" + inp_value;
alert(inp_value); <-- Ausgabe "K_indent_R_075"
document.getElementById(inp_value).firstChild.style.setAttribute("color","#ff0000",false);
Doch das muss gehen. Wenn nicht, ist da noch irgendwas drumrum, was dies verhindert. Kannst Du eine komplette, aufs Problem reduzierte Testseite zeigen?
Das sieht ja wohl nach irgendeinem Typecasting-Problem aus
Nein, nach
inp_value = "K_indent_R_" + inp_value;
ist inp_value definitiv ein String und HTMLDocument.getElementById erwartet als Parameter auch einen.
viele Grüße
Axel
Hallo,
Das funktioniert wurderbar....
document.getElementById("K_indent_R_075").firstChild.style.setAttribute("color","#ff0000",false);
Das sehe ich erst jetzt. Das kann eigentlich nicht funktionieren.
document.getElementById("K_indent_R_075").firstChild.style ergibt ein CSSStyleDeclaration. Das hat keine Methode setAttribute. Warum der IE das trotzdem macht, weiß ich nicht.
Richitg wäre
document.getElementById("K_indent_R_075").firstChild.style.setProperty("color","#ff0000","important");
oder
document.getElementById("K_indent_R_075").firstChild.style.setProperty("color","#ff0000","");
Das kann aber IE nicht, also:
document.getElementById("K_indent_R_075").firstChild.style.color = "#ff0000";
Das können alle aktuellen grafischen Web-Browser.
viele Grüße
Axel
Hallo,
document.getElementById("K_indent_R_075").firstChild.style.setAttribute("color","#ff0000",false);
Das sehe ich erst jetzt. Das kann eigentlich nicht funktionieren.
Warum der IE das trotzdem macht, weiß ich nicht.
viele Grüße
Axel