2009-06-24 20 views
0

Ich habe derzeit einen Bericht mit Paginierung, die 20 Datensätze gleichzeitig anzeigt. Insgesamt gibt es 600 Datensätze.Aktivieren Sie alle Kontrollkästchen mit Paginierung

In diesem Bericht habe ich auch eine Checkbox-Spalte für jeden Datensatz. Basierend darauf lauten meine Abfragen wie folgt:

1) Ich möchte eine "Check All" -Funktion integrieren, also basierend auf meinem Szenario, das 20 Datensätze (insgesamt 600 Datensätze insgesamt) anzeigt, wenn ich die "Check Alle "Kontrollkästchen", ich möchte tatsächlich alle 600 Datensätze überprüfen und nicht nur die 20 pro Seitenumbruch.

Ist dies mit Javascript möglich, da die Gesamtzahl der Datensätze variieren wird? Wenn ja, würde jede Hilfe geschätzt werden?

2) Das gleiche Konzept wie Punkt (1), wenn ich eine Schaltfläche „Senden“ haben, möchte ich eigentlich bestätigen, dass alle 600 Datensätze überprüft wurden, obwohl ich nur bin auf der Suche 20 Datensätze gleichzeitig

Ist das möglich? Wenn ja, würde jede Hilfe geschätzt werden?

Danke. Tony.

+0

Welche Aktionen führen Sie nach dieser Überprüfung alle aus? – rahul

+0

Wenn der Benutzer alle Kontrollkästchen aktiviert hat, werden bestimmte Felder in jedem Datensatz aktualisiert und verarbeitet. – tonyf

Antwort

2

Wenn Sie möchten, dass Javascript diese Art von Funktion ausführt, müssen alle Ihre Kontrollkästchen auf dem Bildschirm gerendert werden.

1

Wenn Sie wirklich möchten, dass Ihr Kontrollkästchen "Alle prüfen" bedeutet, dass alle Seiten geprüft werden sollen, dann sollten Sie dies auf der Serverseite überprüfen.

z.B.

<ul> 
    <li><input type='checkbox' name='item_ids[]' value='1'/>Item 1</li> 
    <li><input type='checkbox' name='item_ids[]' value='2'/>Item 2</li> 
    <li><input type='checkbox' name='item_ids[]' value='3'/>Item 3</li> 

    <li><input type='checkbox' name='check_all' value='check_all'/></li> 

</ul> 

Beachten Sie natürlich, dass Boxen „Überprüfung“, die der Benutzer nicht Mittel sehen können sie alle nicht auswählen können und dann einzelne abzuwählen. Es ist auch etwas kontraintuitiv, alle Seiten zu überprüfen. Die meisten Implementierungen dieser Art betreffen nur die Seite, die Sie gerade betrachten. Ich würde vielleicht ein anderes Steuerelement (eine separate Schaltfläche) für diese Art von Funktionalität verwenden.

1

imo das könnte nicht sein, was der Benutzer erwartet und wie wir alle wissen, dass die goldene Regel der Benutzerfreundlichkeit ist, den Benutzer nicht zu überraschen. Ich würde vorschlagen, eine Schaltfläche oder einen Link, der sehr deutlich angibt, dass diese Aktion "alle auswählen, und mit allen meine ich alle Datensätze auf allen Seiten".

Eine andere mögliche Lösung, die ich viel gesehen habe, ist ein Link, der sagt "zeige alles auf einer Seite". Nachdem der Benutzer geklickt hat und die Seite mit allen Datensätzen und ohne Seitennummerierung neu geladen wurde, können alle ausgewählt werden.

Aber um Ihre Frage wirklich zu beantworten, brauche ich mehr Informationen. Ist die Paginierung serverseitig? Oder bedient der Server tatsächlich die 600 Datensätze, aber sie werden in 20/20 Chunks auf dem Client geschnitten und gewürfelt?

Verwandte Themen