• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Checkboxen lassen sich partout nicht auswählen

Tinobee

Neues Mitglied
Hallo Gemeinde,

ich bin auf der Suche nach Hilfe für mein Formular. Seit Tagen beiße ich mir die Zähne an einem Problem aus, für das ich einfach keine Lösung finde. Mein Formular, bestehend aus einer Sammlung von Checkboxen, macht ein Problem in der Form, dass bestimmte Checkboxen sich einfach nicht anwählen lassen. Ich habe aber exact dieselbe Syntax verwendet und der HTML Validator von Mozilla Firefox zeigt keine Fehler. Auch am Javascript zur Auswertung habe ich nichts verändert, sodass ich von meiner Seite her einen Konflikt durch fehlerhafte Scripte ausschließen würde.

Könntet ihr denn bitte mal eure Meinung dazu geben? Ich verliere langsam den Glauben....

Ihr braucht auf der Seite einfach nur auf "Suchfilter" klicken, dann fährt das Formular aus.

Die Funktion, welche die übermittelten Werte für einen AJAX Request aufbereiten soll, befindet sich hier.

EDIT
Durch Herumprobieren habe ich herausgefunden, dass die vollständige Entfernung des Inhaltes der CSS Datei, welche das Formular formatiert und die Entfernung der ID des unter dem Formular befindlichen DIV Containers auf einmal alle Checkboxen anwählbar wurden. Auf dem Weg dahin fiel mir auf, dass vor dem Entfernen der ID nur allein durch teilweises Entfernen von Inhalt aus der CSS Datei sich die Gruppe nicht anwählbarer Checkboxen zusehends verkleinert hat, so dass am Ende (CSS-Datei war leer) nur noch 2 der 6 Checkboxen nicht mehr anwählbar waren. Ich kann mir dieses Phänomen beim besten Willen nicht erklären.

Habt ihr Ideen? Vielleicht Vorschläge, wie man der Sache auf den Grund gehen könnte?

Gruß, Tino
 
Zuletzt bearbeitet:
Kein Problem. Erfahrungsgemäß liest nur niemand 140 Zeilen Code sondern verlässt einen solchen thread gleich wieder.

Hier der Formular-Code:

EDIT
wieder entfernt, da meine Vermutung sich bestätigt hat, dass niemand den ganzen Code durchwühlen will. Es findet sich ja alles auf der verlinkten Seite.

Außerdem macht das Erleben die Problematik greifbar!
 
Zuletzt bearbeitet:
Dein #projectData_container überlappt die 6 Checkboxen unten rechts. Daher kannst Du sie auch nicht anklicken.

Installier Dir z.B. Firebug für Firefox, damit siehst Du das Problem in 5 Sekunden. :-)
 
Hallo,

ich hab Firebug drauf. Aber wie es scheint, weiß ich nicht, damit umzugehen. Auf welche Weise konntest du diesen Fehler ausmachen? Ich hab bezüglich des erwähnten Containers schon gemerkt, dass er das Filter-Menü überlagert und versucht, ihm einen niedrigeren z-Level per CSS zuzuweisen. Aber das funktioniert nicht.

Wie muss ich's richtig machen?
 
Aktiviere Firebug und dann wähle "Untersuchen". Du kannst nun mit der Maus über die Elemente fahren, die dann angezeigt werden. Wenn Du über die Checkboxen kommst, die nicht funktionieren, markiert er Dir das div#projectData_container. Damit ist klar, wer der Störenfried ist.

z-index ist prinzipiell schon richtig, aber dazu muss das andere Element, hier vermutlich ul.filterSubmenu auch absolut bzw. relativ positioniert werden und einen z-index erhalten.

Allerdings frage ich mich halt nach dem Sinn von div#projectData_container, ob der nicht kleiner sein darf. Er enthält derzeit ja auch noch keinen Inhalt. Wenn der erst nach der Suche mit Inhalt gefüllt wird, dann kann er ja vorher kleiner sein.
 
z-index ist prinzipiell schon richtig, aber dazu muss das andere Element, hier vermutlich ul.filterSubmenu auch absolut bzw. relativ positioniert werden und einen z-index erhalten.
so wie ich die beschreibung auf w3schools verstehe, erhält ein Kind-Element bei Nicht-Angabe des z-index' den Wert "auto" und hat damit automatisch den index des Elternelements, in dem Fall den von filter_container. Dieses hat ja schon einen index von momentan (zum Test) 20. Folglich müsste das in der Liste eingebettete Formular doch auch den Index 20 haben!?

Allerdings frage ich mich halt nach dem Sinn von div#projectData_container, ob der nicht kleiner sein darf.
Nein, da Vorgabe.
Er enthält derzeit ja auch noch keinen Inhalt. Wenn der erst nach der Suche mit Inhalt gefüllt wird, dann kann er ja vorher kleiner sein.
Zugeben, lässt sich der Sinn nicht erschließen, wenn ein Teil der Darstellung fehlt. Ich hatte diesen rausgenommen, weil ich nur das Problem mit dem Formular offen legen wollte. Nun, da sich zeigt, was das Problem verursacht, habe ich die Erscheinung der Seite wieder auf den Level aktualisiert, wie er zur Laufzeit tatsächlich ist, abgesehen davon, dass die Bilchen und Infos nur Dummy-Funktion haben. Er muss direkt beim Laden der Seite schon die aktuelle Größe haben, da der Inhalt nicht vom Filter erzeugt wird sondern von einem mouseover-Event. Der Filter schränkt lediglich die Anzeige der Bildchen ein. Das sind also 2 getrennte Ereignisse.

Allerdings ändert sich trotz eines Index' von 20 für den filter_container, in welchem der Filter verschachtelt ist, der Effekt mit der Überlagerung nicht. Ich probiere schon hin und her, mir die versch. z-Indizes ausgeben zu lassen und zu prüfen, ob ich vielleicht noch höher gehen muss, aber das klappt nicht. Jedoch ändert sich auch mit einem Index von 20000 nichts.

Ich hab schon probiert, der Liste selber einen z-index zuzuweisen (steht aktuell noch im css), aber auch das änderte nichts.

Was mache ich nur falsch?

Gruß, Tino
 
Zuletzt bearbeitet:
Das mag stimmen, dass sich der z-index vererbt, das weiß ich nicht. Aber ich weiß, dass z-index nur zusammen mit "position" funktioniert und position nicht vererbt wird.

Meine Vermutung.
 
Also ich hab jetzt explizit die Position zugewiesen und den z-index und zum auslesen auch nochmal eine js-Funktion, die ein Fenster mit den Ergebnissen öffnet. Seltsamerweise wird nur 1 von 4 Containern ausgelesen. Ich weiß nicht, was hier falsch läuft. Firebug zeigt doch ganz klar, dass die übrigen 3 auch einen z-index haben!?
 
Zurück
Oben