Wie wird ein mehrdimensionales Array mit Jquery AJAX Post übergeben?

8

Ich habe Serialize () verwendet, um Checkbox-Formulardaten mit Post () für einen Warenkorb zu übergeben, der mehrere Artikel der gleichen Kategorie aufnehmen kann.

Wenn ich sie über die Schaltfläche "Senden" posten, funktioniert das problemlos, wenn mehrere Werte übergeben und in einer Kategorie angezeigt werden.

Wenn ich jedoch Jquery serialize () verwendet, wird nur ein Element pro Kategorie und insgesamt nur zwei Kategorien angezeigt. Dies ist ein Array-Problem, aber ich kann es nicht ausarbeiten.

Gibt es eine alternative JQuery-Funktion, die ich verwenden sollte, um ein mehrdimensionales Array zu übergeben?

    
user1337603 31.07.2012, 19:16
quelle

5 Antworten

13

Jquery nimmt multidimensionale Arrays direkt und muss nicht serialisiert werden.

%Vor%

_Post Daten in Ihrer PHP-Datei würden so aussehen

%Vor%

Sobald Sie Ihr mehrdimensionales Datenfeld definiert haben, könnte Ihr Ajax so einfach wie

sein %Vor%

Wenn Ihr Post-Array Felder hat, die Sie nicht kennen, können Sie einfach mit

auf Ihr Post-Array in Ihrer PHP-Datei zugreifen %Vor%     
Branden S. Smith 31.07.2012, 19:23
quelle
2

Ich habe keine gute Lösung gefunden, also habe ich das mit JSON.stringify (); gelöst Hier ist mein Code

Kundenseite:

%Vor%

Serverseite:

%Vor%     
Maddy 06.08.2012 14:19
quelle
1
%Vor%

serverseitig würden Sie zum Beispiel mit php

darauf zugreifen %Vor%     
chris 31.07.2012 19:21
quelle
0

Aus den jQuery-Dokumenten:

  

Damit ein Formularelementwert in die serialisierte Zeichenfolge eingeschlossen wird, muss das Element ein name-Attribut aufweisen. Werte von Ankreuzfeldern und Optionsfeldern (Eingaben vom Typ "Radio" oder "Checkbox") sind nur enthalten, wenn sie aktiviert sind.

Überprüfen Sie zuerst Ihren Code. Es ist schwer weiter zu helfen, ohne den Code zu sehen.

    
Aaron 31.07.2012 19:24
quelle
0

Hier ist mein Metacode-Fragment, das für mich gut funktioniert ...

%Vor%     
hugo 12.04.2017 11:59
quelle

Tags und Links