Uncaught TypeError: Cannot read property 'longueur' undefined pour un simple tableau JSON
Je suis de l'appel d'une fonction de cette manière .
var responseinner = returnvalues(selectedeleemnt);
console.log(responseinner);
l'affichage de l'Objet à
console.log(JSON.stringify(responseinner));
affichant en tant que [{"name":"Coke","image":"json_images/coke_can.jpg","type":["250ml","300ml"],"price":["50","60"]}]
J'ai essayé tous les moyens de l'analyse de cette valeur
[{"name":"Coke","image":"json_images/coke_can.jpg","type":["250ml","300ml"],"price":["50","60"]}]
Mais toujours il envoyait le message d'erreur que
Uncaught TypeError: Cannot read property 'longueur' undefined
J'ai utilisé JSON.analyser , JSON.stringfy() . mais aucun aidé .
for (var i = 0; i < responseinner.type.length; i++) {
}
quelqu'un pourrait-il m'aider
- Pourquoi est-JSON impliqués à tous?
- Vous avez besoin d'un indice,
responseinner[0].type.length
pour identifier l'objet contenant latype
tableau que vous souhaitez examiner.
Vous devez vous connecter pour publier un commentaire.
for(var i=0;i<responseinner.length;i++){
responseinner[i].type .... }
Votre
responseinner
n'est pas unObject
mais unArray
avec un seul élément.Donc, vous aurez à utiliser
responseinner[0].type.length
Si c'était un objet, il aurait commencé par
{}
et pas[]
, avec ce que les tableaux de départ.Pour parser du json avec jquery:
Si responseinner est déjà formé comme un json vous n'avez pas besoin de $.parseJSON
ou
Données Json est livré dans un tableau afin d'obtenir son objet avec un index, et donc pour y accéder:
responseineer[0]
essayer
test[0].type.length
vous avez un Objet dans un tableau de longueur 1, par conséquent, vous devez d'abord définir l'emplacement de l'index de l'Objet dans le tableau qui est trivial puisque la matrice a 1 défini par l'indice.for(var i=0;i
Sa fonctionne très bien mais...comment attribuer à gridview dans le côté client