Maison  >  Article  >  interface Web  >  Discutez de quelques problèmes mineurs dans Ajax

Discutez de quelques problèmes mineurs dans Ajax

亚连
亚连original
2018-05-24 10:19:571379parcourir

Nous rencontrons souvent divers problèmes lors de l'utilisation d'ajax. Aujourd'hui, je vais partager avec vous quelques petits problèmes en ajax, qui sont plus pratiques. Les amis intéressés peuvent se référer à

1. La valeur de transfert inter-domaines Ajax nécessite le type de retour jsonp

$.ajax({
url: "http://.......",
type: 'GET',
dataType: 'JSONP',//js跨域传值
success: function (data) {
}
});

dataType

type : String

Le type de données qui devrait être renvoyé par le serveur. S'il n'est pas spécifié, jQuery effectuera automatiquement des jugements intelligents basés sur les informations MIME du package HTTP. Par exemple, le type XML MIME est reconnu comme XML. Dans la version 1.4, JSON générera un objet JavaScript et le script exécutera le script. Les données renvoyées par le serveur seront ensuite analysées selon la valeur

puis transmises à la fonction de rappel. Valeurs disponibles :

"xml" : Renvoie un document XML pouvant être traité avec jQuery.

"html" : renvoie les informations HTML en texte brut ; la balise de script incluse sera exécutée une fois insérée dans le dom.

"script" : renvoie le code JavaScript en texte brut. Les résultats ne sont pas automatiquement mis en cache. Sauf si le paramètre "cache" est défini. Remarque : lors de requêtes distantes (pas sous le même domaine), toutes les requêtes POST seront converties en requêtes GET. (Car la balise du script DOM sera utilisée pour le chargement)

"json" : renvoie les données JSON.

"jsonp" : format JSONP. Lors de l'appel d'une fonction à l'aide d'un formulaire JSONP, tel que "myurl?callback=?", jQuery remplacera automatiquement ? par le nom de fonction correct pour exécuter la fonction de rappel.

2. Un exemple de démonstration d'ajax avec php pour obtenir la valeur

$(function(){
var my_data="前台变量";
my_data=escape(my_data)+"";//编码,防止汉字乱码
$.ajax({
url: "ajax_php.php",
type: "POST",
data:{trans_data:my_data},
//dataType: "json",
error: function(){
alert('Error loading XML document');
},
success: function(data,status){//如果调用php成功
alert(unescape(data));//解码,显示汉字
}
});
});

code php

$backValue=$_POST['trans_data']; echo $backValue."+后台返回";

Traitement de conversion de données 3.php json

json_decode ( string $json [, bool $assoc ] ); chaîne formatée et convertissez-la en variable PHP
json_decode($data,true);

json chaîne json chaîne formatée à décoder. assoc Lorsque ce paramètre est TRUE, un tableau est renvoyé à la place d'un objet.

json_encode ( Mixed $value [, int $options = 0 ] ) renvoie la forme JSON de valeur
json_encode($a)

Ce qui précède est ce que j'ai compilé pour tout le monde. j'espère qu'à l'avenir, cela sera utile à tout le monde.

Articles associés :

Problème de mise en cache Ajax sous IE8/IE9

Le problème selon lequel IE8 ne peut pas s'actualiser à chaque fois en utilisant l'accès ajax

Problèmes de mise en cache Ajax et solutions sous IE8

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!

Déclaration:
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