arrière-plan:
Lorsque vous effectuez une tâche aujourd'hui, lors de l'utilisation de l'Ajax de JQuery pour passer une longue chaîne de caractères, la vérification de l'arrière-plan a été infructueuse. Après avoir vérifié le matin, il s'est avéré qu'il y avait + numéro dans la chaîne que j'ai générée, et lorsque le JS est passé, je le comprendrais comme un caractère de connexion.
raison:
Après JS, analyser automatiquement les caractères spéciaux, tels que + le nombre est le connecteur, l'analyse comme un espace, et est un connecteur variable, les données sur le serveur n'affichent pas les données après avoir reçu des données, etc.
Solution:
1. Mettez les caractères en forme, puis soumettez le formulaire au serveur avec JS.
2. Remplacez les caractères spéciaux des personnages au personnage hexadécimal.
| + | Espace | / / | Quoi de plus? | % | & | = | # # |
| % 2B | % 20 | % 2F | % 3F | % 25 | % 26 | & 3d | %vingt-trois |
str = str.replace (// + / g, "% 2b");
3. La fonction la plus simple consiste à utiliser la fonction EncodeuRIComponent ().
Cette méthode n'encodera pas les lettres et les nombres ASCII, et ils ne coderont pas ces symboles de ponctuation ASCII: -_.!
D'autres caractères (tels que :; / ?: @ & = + $, # les symboles de ponctuation pour séparer les composants URI) sont remplacés par une ou plusieurs séquences de transition hexadécimale.