- 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: «text/plain; 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, может отображаться нормально, а китайский — нормально.
|