Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 12409|Odpověď: 0

[Jquery] Řešení problému Ajax: Post commits v čínských zkreslených znacích v IE v JQuery

[Kopírovat odkaz]
Zveřejněno 23.12.2015 17:50:05 | | |
  1. var regid = $('#oregion').combobox('getValue');
  2. //var sname = $('#sname').val();
  3. var sname = encodeURI($('#sname').val(),"UTF-8");
  4. if(regid!=""&®id!='undefined'){
  5. $.ajax({
  6. async: true,
  7. type : "POST",
  8. dataType : "json",
  9. url : "<%=request.getContextPath() %>/secretary/isHasUser.do?regid="+regid+"&sname="+sname,
  10. success : function(data) {
  11. if(data.mes!=""&&data.mes!=null){
  12. $.messager.alert('Warning',data.mes);
  13. return false;
  14. }
  15. }
  16. });
  17. }
  18. }
Kopírovat kód
Výše uvedený kód lze běžně předávat v čínštině ve FF/Chrome, ale v IE je problém a informace na pozadí jsou zkreslené.

Pokus o problém:

1. Nastavit obsahTyp: "text/plain; Charset=utf-8", problém přetrvává

2. Znovu jsem zkontroloval stránku JSP, kde se nachází kód ajaxu, všechny používají UTF-8, ale problém přetrvává

3. V Java kódu na pozadí je nucený převod kódování UTF-8, GBK a GB2312 a problém přetrvává

Po analýze se zjistí, že může souviset s přenosem obsahu v prohlížeči nebo JQuery, ale v tuto chvíli to nelze přesně určit.

Řešení:

Předchozí odstavec: encodeURI($(dom).val(), "UTF-8"); encode with encodeURI

Backendový Java kód:

URLDecoder.decode(inputStr, "UTF-8"): Backendový kód dekóduje řetězec předaný v předním segmentu.


Shrnutí:

Nakonec lze informace o řetězci předávané požadavkem Ajax Post zobrazit normálně a čínské lze zobrazit normálně.




Předchozí:Rozdíl mezi metodami encodeURI a encodeURIComponent v js
Další:C# používá regulární výrazy k ověření telefonních čísel, mobilních telefonních čísel, identifikačních čísel
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com