In jüngster Zeit muss dieser Film so konzipiert werden, dass eine Kontrollkastenfunktion bereitgestellt wird, die alle ausgewählt wird.
Oh, ist das nicht eine sehr einfache Sache? Ein allgemeines Kontrollkästchen, n Mehrere Unterprüfungen. Sobald das allgemeine Kontrollkästchen ausgewählt ist, werden alle Unterprüfungskästen ausgewählt. Sobald das allgemeine Kontrollkästchen nicht ausgewählt ist, werden die Unterprüfungskästen nicht ausgewählt.
Nachdem ich diese kleine Anfrage erhalten hatte, war ich heimlich glücklich. Was für eine einfache Funktion, ok, es wird in zwei Minuten erledigt ~~~
Die Zeit verging Minute zu Minute, und die Pferde in der Prärie in meinem Herzen stiegen allmählich von ständig auf zig Millionen ~~~
Was ist damit los?
alert ($ ("#CheckBox_all"). attr ("geprüft"));
Immer undefiniert?
Nani? ? ?
Warum passiert das? ? Bist du im Browser dumm? Dann wechseln Sie die Browser entschlossen, um von Chrom bis IE von IE zu Firefox zu testen. Dies ist das Ergebnis -_- ||
Könnte es sein, dass JQuery Verbesserungen vorgenommen hat? ? ? ?
Nachdem wir mit Hubble -Teleskop und HD -Laserelektronenmikroskop überprüft wurden, fanden wir schließlich den Hinweis. . . .
Es stellt sich heraus, dass dies in JQuery Version 1.6 geändert wurde:
[Das überprüfte Attribut wurde initialisiert, wenn die Seite initialisiert wird und sich nicht mit der Zustandsänderung ändert.
Das heißt, wenn das Kontrollkästchen nach dem Laden der Seite ausgewählt wird, wird der zurückgegebene immer überprüft (ich habe es von Anfang an nicht ausgewählt).
Wenn es am Anfang nicht ausgewählt ist, ist der zurückgegebene immer undefiniert! 】
Da JQuery Änderungen daran vorgenommen hat, muss es eine entsprechende bessere Lösung geben:
.Prop () ist die Waffe, um dieses Problem zu lösen!
Die spezifische Verwendung ist wie folgt:
alert ($ ("#CheckBox_all"). prop ("geprüft"));
Es wird zu diesem Zeitpunkt wahr oder falsch ~~
Der Code dieses Streams wurde also in Folgendes geändert:
#check_all ist das Gesamtkontrollkästchen, das alle ausgewählt wurden, und #check_children ist das untergeordnete Kontrollkästchen
Die Codekopie lautet wie folgt:
$ ("#check_all"). ändern (function () {
$ ('. check_children'). prop ("checked", this.onted);
});
oder:
Die Codekopie lautet wie folgt:
$ ("#check_all"). ändern (function () {
var is_checked = $ (this) .Prop ("geprüft");
$ ('. check_children'). prop ("checked", is_checked);
});
Ich mag es jedoch immer noch sehr, die erste Methode sehr zu verwenden. Je weniger Code, desto besser ~~ Schreiben Sie weniger, machen Sie mehr!
Es ist sehr bequem, das Problem der Auswahl aller ~~~ zu lösen