Hallo,
ich benötige mal wieder Eure Hilfe, nach fast 6 Stunden Hirnmatern komme ich einfach nicht mehr weiter ..
Ziel:
Eine Menüstruktur wird dynamisch als sortierte Liste zusammengesetzt. Hier sollen nun die Klassennamen der einzelnen Listeneinträge durch den Namen der entsprechenden Kategorie ersetzt werden.
Problem:
Einige Kategorien enthalten leider Umlaute. Das hat zur Folge, dass Klassennamen wie class="Übergrößenträger" entstehen. Dieses soll nun durch ein JS vermieden/korrigiert werden.
Lösungsansatz:
Der erste Teil des JS sucht und ersetzt die deutschen Umlaute (ä-ß und Ä-Ü) und erstehst sie durch das sogenannte 'ausgeschriebene' Äquivalent. (Dieser Teil funktioniert)
Der zweite Teil des JS soll nun die jeweilige Klasse durch den geänderten Klassennamen ergänzen - hier scheitere ich leider mit meinem begrenztem Wissen.
HTML
JavaScript
http://jsfiddle.net/AscaX/1/
Vielleicht kann mich Jemand in die richtige Richtung stoßen.
Jetzt schon vielen Dank für Eure Hilfe
Gruß
Edu
ich benötige mal wieder Eure Hilfe, nach fast 6 Stunden Hirnmatern komme ich einfach nicht mehr weiter ..

Ziel:
Eine Menüstruktur wird dynamisch als sortierte Liste zusammengesetzt. Hier sollen nun die Klassennamen der einzelnen Listeneinträge durch den Namen der entsprechenden Kategorie ersetzt werden.
Problem:
Einige Kategorien enthalten leider Umlaute. Das hat zur Folge, dass Klassennamen wie class="Übergrößenträger" entstehen. Dieses soll nun durch ein JS vermieden/korrigiert werden.
Lösungsansatz:
Der erste Teil des JS sucht und ersetzt die deutschen Umlaute (ä-ß und Ä-Ü) und erstehst sie durch das sogenannte 'ausgeschriebene' Äquivalent. (Dieser Teil funktioniert)
Der zweite Teil des JS soll nun die jeweilige Klasse durch den geänderten Klassennamen ergänzen - hier scheitere ich leider mit meinem begrenztem Wissen.
HTML
Code:
<ol id="topmenu">
<li class="item">Übergrößenträger</li>
</ol>
JavaScript
Code:
// dieser Teil funktioniert
var list = document.getElementById("topmenu").getElementsByTagName("li");
var vormals = "Übergrößenträger"; //Die Variable vormals wird dynamisch befüllt
var jetzt = vormals.replace(
/Ä/g, "Ae").replace(
/ä/g, "ae").replace(
/Ö/g, "Oe").replace(
/ö/g, "oe").replace(
/Ü/g, "Ue").replace(
/ü/g, "ue").replace(
/ß/g, "ss");
// dieser Teil klappt leider nicht
if (list.className == "item") {
list.className = className + jetzt;
}
http://jsfiddle.net/AscaX/1/
Vielleicht kann mich Jemand in die richtige Richtung stoßen.
Jetzt schon vielen Dank für Eure Hilfe
Gruß
Edu