Hi there,
Mein Ziel wäre, nur die sichtbaren Checkboxen an und abzuhaken, deshalb schrieb ich folgendes JQuery.
Was ist ein JQuery? Vielleicht solltest Du es einmal mit Javascript versuche?
$(document).ready(function() { $(".My_all_Check").click(function(event) { event.stopPropagation(); if($('.myElement').is(':visible')) { if($('.myElement').prop('checked') == true) { $('.myElement').prop('checked',false); } else { $('.myElement').prop('checked',true); } } }); });
Funktioniert aber nicht. Ich vermute, weil mein
if($('.myElement').is(':visible')) {
ja nicht greifen kann, weil das Element ja sichtbar bleibt. Es wird die komplette Tabellenzeile auf display:none gesetzt. Die Checkbox selber innerhalb der nicht sichtbaren Tabellenzeile bleibt aber sichtbar.Wie gesagt, eine Vermutung.
Aber selbst wenn sie stimmt, weiß ich das nicht aufzudröseln.
Deine Vermutung ist richtig. "Aufdröseln" kannst Du das auf mehrere Arten und Weisen. Entweder Du "hangelst" Dich durch das DOM und fragst ab, ob die Tabellenzeile sichtbar ist oder, wahrscheinlich einfacher aber weniger elegant, Du vergibst sowohl der Tabellenzeile als auch der Checkbox eine ID, und zwar dergestalt, daß eine Nummer als Index eine Zuordnung und damit ein Erkennen der gewünschten Checkboxen möglich macht. Also zB. <tr id="TR"+nummer ... und die Checkbox in der betreffenden Zeile mit <input type="checkbox" id = "CHK"+nummer... - wobei Du Nummer entweder "zu Fuß" eingibst oder in der Schleife, die vermutlich Deine Tabelle erzeugt (mit PHP oder welcher Sprache Du auch immer das machst...)