Aujourd'hui, j'ai rencontré un problème très magique. L'utilisateur m'a dit que le formulaire sur ce site Web ne peut pas obtenir la valeur de retour après avoir été soumis au système de requête. Le résultat de la requête est 0 enregistrements, mais la valeur peut être recherchée par l'exécution locale pure HTML. Je l'ai vérifié moi-même et il s'avère que c'est vrai. De plus, en comparant les paramètres soumis par Get des deux côtés, à l'exception des différentes valeurs des champs, le nombre de paramètres est le même, il peut donc être considéré que cela peut être l'impact du problème de codage.
Après avoir ouvert les deux fichiers séparément, j'ai constaté que les encodages des deux côtés étaient en effet incohérents et que le serveur était GB2312. Les paramètres passant le codage UTF-8 n'ont pas pu être analysés normalement dans le passé, donc j'ai laissé le chien rechercher et trouver une propriété rarement utilisée sur le formulaire.
La copie de code est la suivante:
accepter-charset = ”gb2312 ″
Cette propriété est très intéressante. Vous pouvez définir le formulaire pour coder le contenu, alors ajoutez simplement cette propriété pour former.
Mais c'est très dégoûtant. IE ne prend pas en charge cette propriété, j'ai donc dû pirater la méthode onSubmit () du formulaire et ajouter
La copie de code est la suivante:
onsubmit = ”document.charset = 'gb2312';"
Le problème est complètement résolu.