Dynamiclly ändern element CSS mit Ajax + JSON

Zur Vereinfachung der Frage sagen wir mal ich habe eine Gruppe von Checkboxen (wenn ausgewählt - eine bestimmte Formatvorlage angewendet wurde) und a href-link.

<input type=checkbox  style="color:#0f0; background:#0f0; border:1px solid;" name=CHKB_3D unchecked>
<span id=CHKB_3D_span style="">3D Model</span><br/>
<input type=checkbox  name=CHKB_2D checked>
<span id=CHKB_2D_span style="color:#00D100;">2D Drawing</span><br/>
<input type=checkbox  name=CHKB_ST checked>
<span id=CHKB_ST_span style="color:#00D100;">Stack up</span><br/>
<a onclick="ajax_json_styling()" href="javascript:void(0);">click me to change style!</a>

Dynamiclly ändern element CSS mit Ajax + JSON

Die Werte der Kontrollkästchen status in der Datenbank gespeichert sind.
Der server (PHP) sollte entscheiden, welche neue Farbe der checkbox-label (span) habe ich.
Wenn diese Option nicht ausgewählt -> während, wenn ausgewählt -> grün.

Habe ich eine funktionierende version für dieses Verhalten:
Wenn ich drücken href "speichern", ich schicke ajax-request php, der dann auf der server-Seite Schreibe ich die neuen Werte für die status der Checkboxen. Dann habe ich erstellen und echo einen versteckten DIV (später wird der Inhalt eval() verwenden, um neue Stil) mit spezifischen Stilen, basierend auf den aktuellen server-Daten für den Checkboxen.
Dann in Ajax ich eval() den Inhalt des versteckten DIV-und auf diese Weise die Anwendung der neuen styling basierend auf server-Daten für den Checkboxen.

Herausforderung ist die Migration von eval() JSON+JSON.parse().
Ich weiß, wie ich update mehrere DIVs Inhalte mit JSON (Ajax ich fest, das DIV mit einer bestimmten ID zu aktualisieren). Aber meine situation ist ein bisschen anders, weil ich brauche, um zu entscheiden, auf der server-Seite die element-update (basierend auf DB-Einträge).

Brauche ich nicht hardcoded code in JS oder JQuery, auf dem element, das für das styling, aber die Wahl, welches element getan werden sollte grammatikalisch basiert auf der server-Seite.

Kann ich das mit JSON?

Bitte geben Sie eine Logik oder ein einfaches Beispiel, wie ich das tun kann.

Vielen Dank im Voraus für jede Hilfe!!!

InformationsquelleAutor ihtus | 2012-01-20
Schreibe einen Kommentar