Tim: display:none macht Probleme

Beitrag lesen

Wäre sinnvoll zu wissen, wie du die tabs erzeugst. Mit denen aus jQuery-UI z.B. wird erst das HTML geladen und dann die Tabs erzeugt.

Gehen wir der Einfachheit selber mal von 2 Tabs aus.

Ich stecke beide Tabs in DIVs, mache davon Tab1 sichtbar (display:block) und Tab2 unsichtbar (display:none). Default wird also Tab1 angezeigt. Zugleich erzeuge ich den Link zu den beiden Tabs. Über ein Onclick Event auf den jeweiligen Link blende ich den einen Tab aus und den anderen ein.

Da auf beiden Tabs Formulare liegen, gibt es eine Besonderheit. Ich poste im Formular mit, aus welchem Tab die Hauptseite aufgerufen wird (also das Formular abgeschickt wird). So kann ich beim Laden der Seite erkennen, ob ich den Standarttab laden oder den 2.Tab laden muß. Sprich: Wird aus Tab2 das Formular abgeschickt, landet der User danach auch wieder im 2.Tab und nicht im ersten.

Befinden sich sowohl im 1. Tab als auch im 2. Tab "chosen-select-Felder", sind diese nur dann in voller Breite sichtbar, wenn sich der entsprechende Tab im "display:block) Modus befand, als die Seite geladen wurde. Befand er sich aber im "display:none-Modus" und wurde erst über den Tab2-Link per JS sichtbar gemacht, bleibt von chosen-select-Feld nurmehr ein kleines leeres Dropdown-Feldchen übrig. Das meine ich mit "es wurde nicht gerendert".

Tim