Tableau passe par jquery ajax demande?
Essayer de passer un tableau à une page php à l'aide d'une requête ajax. La réponse actuelle est ction Array() { [native code] }
par opposition à la véritable contenu du tableau (qui im positif n'est pas vide). Voici mon code:
function GetPaginationPage(array1) {
var jsonString = JSON.stringify(array1);
$.ajax({
type: "POST",
url: "includes/get_pagination_page.php",
data: {data : jsonString},
success: function(data){
$('.contestants_list').append(data);
}
});
};
Mis à jour avec json, son train de passer 'undefined'
- double possible de Envoyer un tableau avec l'Ajax script PHP
- utiliser un Objet au lieu de cela, tout est preatty de la même façon. Comme data = new Object() ... data['some_key'] = 'some_value'; ... et vous pouvez l'envoyer plus de l'amende juste.
- Comment faites-vous appel à
GetPaginationPage
? Ce qui se passe quand vousconsole.log(array1)
? - À l'aide d'un tableau php.
GetPaginationPage(<?php echo $contestants_array; ?>);
$contestants_array être un tableau - Vous ne pouvez pas passer les tableaux PHP, JavaScript comme ça. Utilisation
GetPaginationPage(<?php echo json_encode($contestants_array); ?>);
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de raison d'utiliser
JSON.stringify
ici. Juste envoyer le tableau normalement à PHP.Maintenant en PHP,
$_POST['data']
sera un tableau.Mise à JOUR: Vous avez dit que vous appelez
GetPaginationPage
comme ceci:Vous avez besoin de le changer pour:
Lorsque vous
echo
un tableau en PHP, il est converti à la chaîne"Array"
, qui est intrepreted par du JavaScript, de l'Array
objet.data:[object Object] data:[object Object] data:[object Object]
où nous avons besoin de l'objet réel, pas le visage que son objet.join(',')
, qui ne fonctionnera pas avec un tableau d'objets. Ce qui se passe quand vousconsole.log(array1)
?Convertir le tableau en une chaîne à l'avant de la transmettre comme suit:
Ou si c'est un ensemble complexe d'envisager JSON:
La j'ai fait, c'était pour créer le tableau en JavaScript comme un délimité (~) string & puis j'ai utilisé le exploser fonction php pour charger dans un tableau.