2016-05-24 14 views
0

Ich habe ein 3-seitiges PHP-Formular erstellt, das die Antworten auf die nächste Seite in ausgeblendeten Feldern enthält. Jede Seite hat 3 Fragen und je nach Ihrer Antwort können Sie "qualifiziert" oder "nicht qualifiziert" sein. Idealerweise möchte ich zählen, wie viele "unqualifizierte" Antworten insgesamt für alle 3 Seiten ausgewählt wurden. Hier ist mein aktueller Code zu zählen, wie viele „unqualifizierte“ Antworten auf einer Seite ausgewählt wurden:JQuery Hinzufügen von Schleife über mehrere Seiten

<script type="text/javascript"> 
    $(function(){ 
     $('select').on('change', function(e){ 
      e.preventDefault(); 
      ct = $('select option.unqualified:selected').length; 
      $("input[class=uqNum]").val(ct); 
     }); 
    }); 
</script> 

Das Skript zählt, wie viele Optionen mit der Klasse „unqualifizierten“ wurden ausgewählt und stellt diese Zahl in einem versteckten Feld mit Klasse "uqNum".

Das Problem ist, wenn ich auf die nächste Seite des Formulars gehen und wählen Sie eine andere "unqualifiziert" -Option, die Nummer wird dann durch die Nummer auf dieser Seite ausgewählt, und fügt nicht weiter zu der Nummer aus der vorherige Seite. Ich habe das Gefühl, dass es eine Art von Schleife geben sollte? Wie fügen Sie einen Wert hinzu, wenn Sie auf eine andere Seite wechseln?

+1

Um zu wissen, ob dies funktioniert, wäre es notwendig, den Code für die 3 Seiten zu sehen – RiggsFolly

+2

Wenn ich dies tun würde, würde ich eines von zwei Dingen tun, 1) Sitzung verwenden, um zu bestehen Ihre Antworten 2) Machen Sie das Formular zu einer Seite und verstecken Sie jede "neue Seite" mit css/javascript und zeigen Sie jede "neue Seite" mit einem nächsten Knopf an. – Rasclatt

+0

Ich kann nicht alles auf eine Seite setzen, ich würde es wirklich lieben. Aber mein Kunde hat speziell um 3 separate Seiten für das Formular gebeten. Ich kann die Antwort für die erste Seite einer Sitzung beibehalten, aber wie füge ich sie hinzu, wenn ich auf die nächste Seite gehe? – Dawn

Antwort

1

Wenn Sie PHP verwenden, würde ich ändern, die Werte in ausgeblendeten Optionen speichern und ändern, um Sitzungswerte zu verwenden. Dann können Sie auf jeder Seite auf die Werte der vorherigen Seite zugreifen.

Sie müssen session_start() irgendwo am Anfang jedes PHP-Skript aufrufen. Dann können Sie leicht auf die Werte zugreifen $_SESSION['key_name'] = $value;

+0

Ich denke, ich kann nur Sitzungswerte für jede Seite haben, dann addiere ich es? – Dawn

+0

Ja, wenn jede Seite ihr Formular übermittelt, können Sie alle Werte in der Sitzung speichern. Dann auf der letzten Seite Berechnungen für die Werte von jeder Seite. – Brett

+1

Die Verwendung von Cookies hat gut funktioniert! Danke :) – Dawn

Verwandte Themen