Maison > interface Web > js tutoriel > Comment utiliser ajax pour obtenir des données json comme non définies

Comment utiliser ajax pour obtenir des données json comme non définies

php中世界最好的语言
Libérer: 2018-03-30 16:49:11
original
2175 Les gens l'ont consulté

Cette fois, je vais vous montrer comment utiliser ajax pour obtenir des données json non définies. Quelles sont les précautions lors de l'utilisation d'ajax pour obtenir des données json non définies. Voici des cas pratiques, prenons un exemple. regarder.

Asynchrone JavaScript et XML (Ajax) sont des technologies clés à l'origine d'une nouvelle génération de sites Web (communément appelés sites Web 2.0). Ajax permet la récupération de données en arrière-plan sans interférer avec l'affichage et le comportement d'une application web. Obtenez des données à l'aide de la fonction XMLHttpRequest, une API qui permet à JavaScript côté client de se connecter à un serveur distant via HTTP. Ajax est également la force motrice derrière de nombreux mashups, qui intègrent du contenu provenant de plusieurs endroits dans une seule application Web.

Généralement, lors du traitement de la valeur json envoyée depuis le serveur, nous la traiterons de deux manières :

1 La première consiste à utiliser la fonction eval(). var dataObj=eval("("+data+")");//Convertir en objet json (remarque : les données sont des données json)

2. Utilisez l'objet Function pour l'analyse du retour. var json =(new Function("","return "+data))();

Mais quand je travaillais sur un projet aujourd'hui (le projet utilisait struts2), j'utilisais ces deux méthodes pour lire json, et le résultat était toujours indéfini. J'ai vérifié beaucoup d'informations sur Internet, mais la plupart d'entre elles n'étaient pas claires. Plus tard, j'ai trouvé un article dans lequel l'auteur a également rencontré cette situation. Sa solution était de déclarer la valeur de retour dans l'action comme un attribut json <.>, et dans le sien Après que le projet ait échoué au test, la solution était de le transférer à nouveau. Ce qui suit est ma propre réflexion : bien que les données transmises depuis l'arrière-plan soient déclarées comme un attribut json, lorsqu'elles sont transmises à la réception, il s'agit en fait d'une chaîne, pas d'un objet json pour le moment. , nous devons traiter les données en arrière-plan, les convertir en objet json, puis obtenir la valeur en json. Mais parfois, la valeur transmise depuis l'arrière-plan n'est pas nécessairement une chaîne au format json standard. Bien que nous convertissions l'objet transmis depuis l'arrière-plan via l'une des deux méthodes précédentes, l'objet json converti à ce moment est en fait toujours une chaîne. chaîne json standard, et après l'avoir reconvertie, elle devient un objet json.

Ce qui suit fait partie du code :

 result = JSONObject.fromObject(map).toString();//后台代码,将map转成json对象
      success : function(result) {//前台返回值代码
var obj = eval("("+result+")");
//var data1 =(new Function("","return "+obj))();
var data1=eval("("+obj+")");
alert(data1.name);
      }
Copier après la connexion

Je crois que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des choses plus excitantes, veuillez prêter attention à php Chinois Autres articles connexes en ligne !

Lecture recommandée :

Explication détaillée des étapes pour recevoir des données josn à l'aide de josnp en ajax

Qu'est-ce qu'un élégant solution pour requête ajax front-end Réaliser

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal