- var regid = $('#oregion').combobox('getValue');
- //var sname = $('#sname').val();
- var sname = encodeURI($('#sname').val(),"UTF-8");
- if(regid!=""&®id!='undefined'){
- $.ajax({
- async: true,
- type : "POST",
- dataType : "json",
- url : "<%=request.getContextPath() %>/secretary/isHasUser.do?regid="+regid+"&sname="+sname,
- success : function(data) {
- if(data.mes!=""&&data.mes!=null){
- $.messager.alert('Warning',data.mes);
- return false;
- }
- }
- });
- }
- }
Копирай код Горният код може да се предава на китайски нормално във FF/Chrome, но в IE има проблем и изходът на информация във фонов режим е неразборен.
Опит за проблем:
1. Set contentType: "текст/обикновено; charset=UTF-8", проблемът остава
2. Проверих отново JSP страницата, където се намира ajax кодът, всички използват UTF-8, но проблемът остава
3. Във фоновия Java код е принудително конвертирането на UTF-8, GBK и GB2312 и проблемът продължава
След анализ се установява, че може да е свързано с предаването на съдържание в браузъра или JQuery, но в момента не може да бъде точно определено.
Решение:
Предишен параграф: encodeURI($(dom).val(), "UTF-8"); кодиране с encodeURI
Бекенд Java код:
URLDecoder.decode(inputStr, "UTF-8"): Бекенд кодът декодира подадения низ във фронталния сегмент.
Резюме:
Накрая, информацията за низовете, предоставена от заявката на Ajax Post, може да се показва нормално, а китайският може да се показва нормално.
|