Maison > interface Web > js tutoriel > Comment résoudre le code chinois tronqué soumis par JQuery ajaxSubmit

Comment résoudre le code chinois tronqué soumis par JQuery ajaxSubmit

亚连
Libérer: 2018-05-25 09:47:45
original
2672 Les gens l'ont consulté

Cet article partagera avec vous la solution au problème de la soumission tronquée du chinois dans jquery ajax submit. Les amis intéressés peuvent me suivre pour apprendre

La plupart des gens utilisent

.
jQuery(form).ajaxSubmit({ 
url: "ajaxsub.aspx?abc=test",
type: "post", 
dataType: "json", 
success: data
});
Copier après la connexion

Analyse : la soumission AJAX de JQuery encodera les données à soumettre et utilisera encodeURIComponent pour traiter les données en js. Par conséquent, qu'il s'agisse de Firefox ou d'IE, les données soumises sont cohérentes et sont des données codées en UTF-8.

En regardant l'en-tête, nous avons constaté qu'il y a une différence dans le type de contenu dans l'entité

Dans Firefox, le type de contenu spécifie le jeu de caractères comme utf-8 .

Cependant, il n'y a pas de spécification de jeu de caractères dans IE

Évidemment, par défaut, le codage des caractères de la soumission asynchrone d'AJAX doit être cohérent avec la page Web elle-même. aucun jeu de caractères côté serveur. Il s'avère que lorsque le jeu de caractères affiché est spécifié, gb2312 est utilisé pour décoder les données (mais les données ont été codées en UTF-8 avant la soumission). C'est la cause première des caractères tronqués sous IE. , alors que sous Firefox, le navigateur soumet Lorsque les données AJAX sont fournies, la spécification d'affichage du jeu de caractères est ajoutée, obligeant le serveur à utiliser UTF-8 pour décoder les données (décodage correct).

Vérifiez la description de la fonction de l'outil AJAX de JQuery et constatez qu'il existe un paramètre spécifiant le type de contenu dans les options

Vous devez donc spécifier le type d'encodage lors de la soumission

contentType: "application/x-www-form-urlencoded; charset=utf-8",
Copier après la connexion

C'est le suivant

jQuery(form).ajaxSubmit({ 
url: "ajaxsub.aspx?abc=test", 
type: "post", 
dataType: "json", 
contentType: "application/x-www-form-urlencoded; charset=utf-8", 
success: data
});
Copier après la connexion

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

Articles connexes :

Comment résoudre les caractères chinois tronqués lorsque JQuery ajax renvoie json

Comment utiliser ajax dans Django méthode de publication du framework

Explication détaillée d'ajax + jtemplate pour implémenter la pagination dynamique

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