Récupérer et afficher les données JSON champs à l'aide de HTML et AngularJS
Im nouveau à angularJS et conception de site web dans son ensemble. Im essayant d'obtenir un champ de données(ou d'un élément) à partir d'un JSON. Par exemple, c'est ce que le JSON ressemble
{
"Name":"Raymond Eugene Monce",
"Dateofbirth":"1924-0308T00:00:00Z",
"Ethnicity":"Caucasian",
"Languages":["{English}"],
},
et je vais essayer d'obtenir le "Nom" du champ de données. C'est ce que mon .fichier js ressemble,
var profile = angular.module('profile', ['ui.bootstrap','ngResource']);
profile.controller("profileController", ["$scope","$resource", function($scope, $resource) {
//get the user id
$scope.userid = sessionStorage["cerestiuserid"];
//json we get from server
$scope.apicall = sessionStorage["cerestihome"]; //NEED TO CHANGE API
//grabs the user we want
$scope.userResource = $resource($scope.apicall + "/api/userprofile/",
{Userid:21},
{'get':{method: 'POST'}}
);
//fetch JSON
$scope.userResource.get(function(result) {
//get the name field
$scope.name = result;
sessionStorage["name"] = JSON.stringify(result);
});
et mon .fichier html,
<div ng-controller = "profileController" style="float:left">
<!-- profile pic -->
<div class="pull-left">
<div class="container-fluid">
<div class="profile">
<div class="row">
<div class="center-block">
<div class="profilePic">
<img ng-src="{{profilePic()}}" class="img-responsive">
<!-- name field -->
<label class="caption">
<h4>{{name.name}}</h4>
</label>
</div>
Encore une fois, je ne suis pas à avoir des problèmes avec la Base de données ou API appels. Je veux juste savoir comment je peux obtenir et d'afficher le champ nom du JSON. Merci.
Pouvez-vous faire une console.ou du journal de débogage et de voir exactement ce que le "résultat" var vous obtenez de retour ressemble? Pouvez-vous nous montrer l'objet $scope.le nom est d'être ensemble?
Essayez $champ d'application.nom = résultat.Nom;
Merci les gars, allez travailler. Strelok a droite
Essayez $champ d'application.nom = résultat.Nom;
Merci les gars, allez travailler. Strelok a droite
OriginalL'auteur user3783947 | 2014-07-01
Vous devez vous connecter pour publier un commentaire.
strelok2010 du commentaire ci-dessus devrait fonctionner même si cela dépend si votre résultat ressemble vraiment à celui défini dans le haut de votre question.
Votre résultat semble normal, pas de JSON (javascript object. (ouais ils sont différents, et que la confusion moi quand je l'ai appris.) Je suppose que parce que vous stringify la
result
d'un objet javascript en JSON. Donc si c'est le droit de travailler votreresult
est un objet javascript ou un tableau d'objets javascript. Je suis en supposant un tableau. Vous pourriez vouloir vérifier si.J'ai remarqué que votre précédent post avait un problème connexe.
Que l'on vous demandait d'accéder à une propriété d'un objet dans un tableau. Dans ce cas, il a raison. Ici, c'est la réponse de votre question précédente
Il y a deux choses que je ne suis pas sûr de la cause de l'incompatibilité entre le présent et à votre dernière question.
D'abord votre
name
de propriété dans vos résultats objet est orthographié avec un capital N ici, par opposition à un bas de cas n dans votre dernière question.Gardez à l'esprit que capitilization questions en javascript.
Deuxième votre résultat dans votre dernière question était un tableau d'objets et en cela, il semble être juste un objet.
Donc selon laquelle il s'agit permettra de déterminer votre solution. Donc au lieu d'écrire toutes les solutions possibles, je vais vous montrer comment faire pour déterminer la solution.
N'oubliez pas que nous sommes face à un tableau normal des objets javascript. Je vais essayer d'aller dans les détails, donc c'est extra clair (désolé, je vous ai entendu étaient nouveaux pour développement web, je suis en supposant que JavaScript aussi.), mais désolé si c'est un peu trop détaillé. Je vais aussi le découper en plusieurs parties pour aller plus loin dans le tableau d'objets que je vais utiliser dans mon exemple, mais traversant dans la structure de données peut être fait en une seule ligne, comme je vais le montrer.
Vous ne pouvez effectuer des actions sur le ultrapériphériques-forme "(par le chemin "ultrapériphériques-forme" est juste un terme que je vais utiliser pour les éclaircissements qu'il n'est pas vraiment un terme technique.) et de travailler votre chemin dans la collection (objet/array/string)
Comme un exemple, nous avons un large éventail de personnes, avec la matrice de la "ultrapériphériques-forme"
Si nous avons vu la valeur des gens en ce moment, il n'est pas surprenant.
Commencer avec le Tableau
Puisque c'est un tableau comme le "ultrapériphériques-forme", on peut obtenir l'une de ses valeurs à l'aide d'un index. Tout comme tout autre tableau. Juste pour un peu de contraste, je vais vous montrer comment ce que nous faisons est similaire à tout autre tableau, en montrant l'exemple d'un tableau par lui-même
De retour à notre exemple. Nous allons créer une variable de la personne et de conserver notre première personne dans le peuple de tableau dans cette valeur.
Maintenant si vu notre personne variable, il serait égal à la suivante
Vous pouvez voir tout comme le tableau normal il attrape le premier élément du tableau. Vous pouvez voir comment nous sommes lentement en traversant dans notre peuple structure de données. (que d'être un tableau d'objets.)
D'entrer dans l'Objet
Bon alors maintenant nous avons l'objet de personne, mais nous voulons que le nom de cette personne donc, puisque nous avons affaire à un objet, nous avons pour accéder à ses propriétés, nous pouvons le faire avec 'point', par exemple
<object>.<property>
, ou "support de notation' qui peut être fait avec une variable ou une chaîne de caractères pour le nom de la propriété. par exemple,<object>.["<property>"]
ou<object>.[<variable>]
Donc, juste comme exemple, je vais vous montrer ce qu'il faut normalement pour obtenir la valeur d'une propriété d'un objet, de sorte que vous pouvez les comparer et voir il n'y a pas de "magie". Gardez à l'esprit javascript est sensible à la casse. Aussi les objets javascript propriétés peuvent aller avec ou sans guillemets entourant contrairement à JSON. Une dernière chose à disposer d'un espace dans le nom de la propriété nous oblige à utiliser des guillemets, et nous oblige aussi à accéder à la propriété via le support de la notation.
De retour de nouveau à nos train de la pensée. Nous avons donc parcouru dans notre peuple tableau pour trouver la personne objet de maintenant, nous allons obtenir leur nom.
La valeur de nom.
Vous pouvez faire avec ce que vous souhaitez. Vous pourriez avoir également utilisé l'un des moyens d'obtenir un des objets de propriété, y compris le support de la notation.
Faire Tout ce que nous venons de faire en une Seule Ligne
Donc d'écrire que dans une seule ligne, vous serait tout simplement écrire
S'appliquent à votre Question
De manière à s'appliquer à votre question, si votre résultat ressemble à ceci
Alors vous avez besoin pour obtenir le nom
Si c'est juste ce
Ensuite, vous avez juste besoin
Comme demandé dans les commentaires si vous voulez obtenir le
date of birth
propriété de l'objet, vous devez utiliser le support de la notation pour obtenir l'élément d'un objet. Support de la notation est l'un des deux objets les accesseurs de propriété l'autre étant la notation point. J'ai couvert à la fois à l'entrée de la section de l'objet. Il peut être utilisé à tout moment, mais est utilisable dans certains cas, que la notation point ne fonctionne pas.Un exemple et une citation de MDN:
Donc, depuis un certain caractère, comme les espaces ne peuvent pas être utilisés dans la notation par points support de la notation doit être utilisé dans ces cas spéciaux, lorsque ces caractères sont présents.
Ci-dessous le support de la notation de la date de naissance.
Comme je l'ai dit avant, il peut être utilisé n'importe où, mais en général, la notation point est préféré pour sa brièveté. Donc, juste pour montrer que, nous allons montrer le nom de domaine est accessible à l'aide du support de la notation:
Une raison de plus vous pouvez utiliser la notation crochets est pour sa capacité à utiliser des variables comme tellement.
qui, en fait, si vous comprenez le principe de cet exemple, le MDN exemple pourrait faire plus de sens.
Si vous avez des questions hésitez pas à me laisser un commentaire.
Eh, pas de problème, content d'avoir pu aider.
bonjour john, pouvez-vous s'il vous plaît suggérer réponse : en tant que votre exemple : Comment obtenir la date de naissance : result[0].date de naissance me donner l'erreur.. s'il vous plaît donner la syntaxe correcte.
Hey @sanjaybhansali j'ai ajouté un peu de contenu supplémentaire à la poste, dans votre cas, si vous utilisez le tableau d'objets
result[0]["date of birth"]
serait ce que vous cherchez.OriginalL'auteur John