Je reçois l'identifiant et le nom de la catégorie de la base de données mysql.
Quand je préviens un résultat, je reçois:
[{"id":"197","category":"Damskie"},"id":"198","category":"M\u0119skie"}]
(Est-ce cet objet?)
Comment puis-je imprimer un résultat comme celui-ci:
Damskie
M\u0119skie
M\u0119ski - a un mauvais encodage. Ce devrait être Męskie . Comment puis-je changer cela?
var arrofobject = [{"id":"197","category":"Damskie"},{"id":"198","category":"M\u0119skie"}];
$.each(arrofobject, function(index, val) {
console.log(val.category);
});
Ce que vous avez du serveur est une chaîne comme ci-dessous:
var data = '[{"id":"197","category":"Damskie"},{"id":"198","category":"M\u0119skie"}]';
Ensuite, vous pouvez utiliser la fonction JSON.parse
pour le changer en objet. Ensuite, vous accédez à la catégorie comme ci-dessous:
var dataObj = JSON.parse(data);
console.log(dataObj[0].category); //will return Damskie
console.log(dataObj[1].category); //will return Męskie
Votre résultat est actuellement au format chaîne, vous devez l’analyser comme json.
var obj = $.parseJSON(result);
alert(obj[0].category);
En outre, si vous définissez le type de données de l'appel ajax que vous effectuez sur json
, vous pouvez ignorer l'étape $.parseJSON()
.
var arrofobject = [{"id":"197","category":"Damskie"},{"id":"198","category":"M\u0119skie"}];
var data = arrofobject.map(arrofobject => arrofobject);
console.log(data)
pour plus de détails, veuillez regarder jQuery.map ()