Prototyp wählen Sie alle Kontrollkästchen code funktioniert im IE, aber nicht Firefox
Bin ich mit prototype 1.6.0.1. Ich versuche, aktivieren Sie alle Kontrollkästchen beim klicken auf eine Schaltfläche. Dieser code funktioniert im IE 6, aber NICHT in Firefox 3. Was mache ich falsch?
<input class="submit" type="button" value="check all" onclick="$(this.form).getInputs('checkbox').each(function (elem) {elem.checked = true;});" />
InformationsquelleAutor Robert4Real | 2009-04-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich erstellte eine sehr einfache Seite zu testen Sie Ihr Problem:
& es funktioniert gut für mich in Firefox 3.0.8 (wie auch der IE)...
Ich Stimme mit den anderen Antworten....form sollte in Ordnung sein (wird das form-Objekt aus dem submit-button, das sollte dann lassen Sie die Kontrollkästchen aus, die es über getInputs).
Was ist das eigentliche Problem? Passiert nichts? Wenn dem so ist, das einzige, was ich denken kann ausgeschaltet ist, sind die Checkboxen in der gleichen form wie der Knopf?
EDIT: Wenn Ihr code ist effektiv die gleiche wie die oben & es funktioniert nicht, die beste, die ich vorschlagen kann, ist, dass Sie Ihren onclick in einem geeigneten Funktion call & verwenden Sie dann firebug um herauszufinden, welche spezifischen bit nicht funktioniert. I. e. machen Sie Ihren code wie folgt Aussehen:
Dann können Sie Haltepunkte in der Funktion & stellen Sie sicher, dass 'button', 'form' und 'Eingänge' sind, was Sie von Ihnen erwarten, und dass die 'elem', die in der each-Schleife zu.
Komisch... nur gute Sache ist, dass da das Problem in firefox, zumindest haben Sie Zugang zu firebug zu verfolgen, das problem nach unten (siehe mein edit oben).
InformationsquelleAutor Alconja
Form ist die Muttergesellschaft der Eingabe, so dass diese.form sollte nicht Sinn machen. Verwenden Sie einen ID-Selektor oder den Eltern.
Zweite Sache - erklären, dass diese js zuweisen-Aktion auf dem Dokument laden, dieser Weg ist ein bisschen chaotisch, separate js von html, um eine saubere, flexible codebase.
In jQuery, es wäre sth like:
im Prototyp sollte ähnlich sein.
InformationsquelleAutor zalew
Können Sie sehen, die Lösung in diesem link:
http://www.ryboe.com/2008/07/10/select-all-checkboxes-with-prototype-js.html
Wenn Sie nicht wollen klicken Sie auf, versuchen Sie dies:
InformationsquelleAutor
Was Sie ersetzen
mit
?
this
sollte in diesem Fall beziehen sich auf den submit-button, so dass ich denke, würdethis.form
ist nicht das richtige zu verwenden. Mein Bauchgefühl ist =boj= Recht ist 🙂Ich bin nicht einverstanden... 'dies' sollte den submit-button, so ist 'dies.form " sollte die form (vorausgesetzt, dass die Schaltfläche in das Formular), das sollte halten alle Eingänge.
InformationsquelleAutor boj