Ce n' .d en JSON veux dire?
J'ai un .NET webmethod que j'ai appelé de jQuery. La méthode renvoie certaines balises HTML que j'affiche dans un élément DIV.
Une fois que j'ai la réponse que j'ai utiliser
$("#div").html(result.d);
Ma question est, ce qui ne l' .d ne? Je n'aime pas utiliser de code je ne comprends pas tout? Pourrais-je obtenir le même résultat en utilisant Eval?
- connexes: stackoverflow.com/questions/739859/...
- connexes: stackoverflow.com/questions/2811525/... NB j'ai changé d'avis sur mon VTC sur cette question - cette question en dépit d'être plus récente est plus ciblée et a de meilleures réponses
Vous devez vous connecter pour publier un commentaire.
Faites-vous référence à la ADO.NET Services de Données?
Je me souviens avoir entendu un exposé sur le JSON de retour et je pense que c'est juste un wrapper pour assurer la charge utile est un objet JSON par opposition à un tableau (ce qui est le cas de renvoi de plusieurs entités).
Pourquoi " d " en particulier? Je pense que je me souviens d'eux en disant quelque chose comme "eh bien, il a dû être quelque chose".
result.d
partout est toujours en cours et de travail dans la Production de haussement d'épaules. Je pense que c'est juste pour faire un appel AJAX avec des Formulaires Web web suite le point de fin. La "relative" des liens dans les commentaires sous l'OP question, je pense, bon pour la discussion de ce que l'.d
est de. --- comme d'habitude, si seulement il y avait une meilleure DOCUMENTATION...Basé sur ce tutoriel: JSON Web Service Et jQuery avec Visual Studio 2008
Le Web Méthode retourne un Produit qui est sérialisé dans un format JSON. Car il n'est pas
JSON
type, la valeur retournée est unString
avec le format JSON.Sur le côté client, l'appel ajax retourne un JSON.
Le résultat ressemble à
{d: 'returned-string-with-JSON-format'}
Plus exactement quelque chose comme:
{d:'{"ID":123,"Name":"Surface Pro 2"}'}
Noter que
'returned-string-with-JSON-format'
est une chaîne pas un objet JSON afin de vous ne peut pas neresult.d.ID
.Au lieu de cela, vous devez le convertir en objet JSON en utilisant
JSON.parse(result.d)
oueval(result.d)
À la fin, ce que vous voulez vraiment est ce faire:
Mise à JOUR
Également envisager cette démo, où j'utilise un JSON dans un format de chaîne et de le convertir en objet JSON:
peut être très utile lien pour ceux qui veulent vraiment apprendre à partir de zéro un exemple de la classe wrapper où les détails dans une classe ne peut jamais être dislosed à d'autres classe, mais peut être indirectement accessibles par le biais de diverses méthodes
http://www.c-sharpcorner.com/Blogs/12038/wrapper-class-in-C-Sharp.aspx
ASPX Code Ici:
De Code C# Ici:
Il retourne la valeur du champ nommé '
d
" dans l'objet 'result
'.Cette question montre un exemple de la façon dont le JSON peut paraître, de l'avis de la
d:
champ.La d est la partie du résultat retourné par votre .NET code. Si vous regardez ce code, vous devriez voir une variable réglé avec le nom d'. Si il est généré à partir de classes sérialisées, alors il est probablement envoie le long d'un des membres de cette classe avec le nom de d.
Comme d'autres l'ont souligné, il renvoie le
"d"
membre de la"result"
objet.Si vous voulez avoir
"d"
dans une variable, vous pouvez utiliser ceci:Son est très clair que $("#div").html(le résultat.d); dans ton code
"résultat" est un objet et d est la propriété de "résultat".
Laisser expliquer,
si vous créez un objet comme ça,
si nous avons accès à la propriété du résultat est que l'utilisation de jquery
nous obtenons donc le résultat en html est