jquery中文乱码的多种解决方法_jquery
1、使用$.ajax出现的中文乱码的解决方案:
var _realname = $("input[name='_searchName']").val();
var termcourseId = '';
var classId = '';
var url = "/addressbook/studentListNoPage.do";
//var dataUrl = "formMap.TERMCOURSE_ID="+termcourseId+"&formMap.CLASS_ID="+classId+"&formMap.IS_ONLINE=all&formMap.REALNAME="+_realname;
$.ajax({
type: "POST",
url: url,
dataType:"json",
data: {
"formMap.TERMCOURSE_ID":termcourseId,
"formMap.CLASS_ID":classId,
"formMap.IS_ONLINE":"all",
"formMap.REALNAME":encodeURI(_realname)
},
contentType: "application/x-www-form-urlencoded; charset=utf-8",
success: function(data){
data = eval(data);
var html = "";
$("#allUnselectedUser").html(html);
},
error : function(XMLHttpRequest, textStatus, errorThrown){
alert(textStatus);
}
});
其中当使用dataUrl中的&方式提交时,无论前台是使用encodeURI或者encodeURIComponent又或者escape把中文转码,提交到Action中都是乱码,并不是想要的%e6%b1%89%e5%ad%97这种转后编码。即使加上contentType也不行。
把dataUrl中的&方式提交修改为data:{name:value}的方式提交即可。
在Action中使用URLDecoder.decode(realname, "UTF-8")来转码即可转换为中文了。使用UTF-8是因为Jquery的提交方式默认为UTF-8,即使把contentType中的charset修改其他,例如GBK,后台也把UTF-8修改GBK,都不能正确转换。
jQuery ajax乱码问题解决
一、测试环境
jQuery:1.3.2
tomcat:5.5.17
二、测试方法
1.使用get方式
服务器端java代码:
String name = new String(request.getParameter("name").getBytes("iso8859-1"),"utf-8");
客户端js代码:
$.ajax({url: "2.jsp",type: "get",data: {name:"中文"},success: function(response){
alert(response);
}});
结果:正确显示
$.ajax({url: "2.jsp",type: "get",data: "name=中文",success: function(response){
alert(response);
}});
结果:乱码
$.get("2.jsp", { name: "中文" },function(response){
alert(response);
});
结果:正确显示
$.get("2.jsp", "name=中文",function(response){
alert(response);
});
结果:乱码
2.post方式
服务器端java代码:
request.setCharacterEncoding("UTF-8");
String name = request.getParameter("name");
客户端js代码:
$.ajax({url: "3.jsp",type: "post",data: "method=testAjaxPost&name=中文",success: function(response){
alert(response);
}});
结果:正确显示
$.ajax({url: "3.jsp",type: "post",data: {name:"中文"},success: function(response){
alert(response);
}});
结果:正确显示
$.post("3.jsp", { name: "中文" },function(response){
alert(response);
});
结果:正确显示
$.post("3.jsp", "name=中文",function(response){
alert(response);
});
结果:正确显示
三、使用filter
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
if (req.getHeader("X-Requested-With") != null && req.getHeader("X-Requested-With").equalsIgnoreCase("XMLHttpRequest")) {
request.setCharacterEncoding("utf-8");
} else {
request.setCharacterEncoding("gbk");
}
chain.doFilter(request, response);
}
jQuery在使用ajax的时候会在header中加入X-Requested-With,值为:XMLHttpRequest,filter中判断是jQuery的ajax请求时就把字符编码设为utf8,这样可以解决post提交中的中文乱码问题,不需要在代码中设置request.setCharacterEncoding("UTF-8");
对于get方式的中文乱码问题,建议不使用get方式提交中文,统统改为post ^-^
为了和prototype.js处理中文的方式一致,可以使用如下的方式,自定义header中的属性RequestType
$.ajax({
url: "3.jsp",
type: "post",
data: {name:"中文"},
beforeSend: function(XMLHttpRequest){
XMLHttpRequest.setRequestHeader("RequestType", "ajax");
alert("开始");
},
success: function(data, textStatus){
alert(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown){
alert("错误:" + textStatus);
},
complete: function(XMLHttpRequest, textStatus){
alert("完成:" + textStatus);
}
});
filter代码如下:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
if (req.getHeader("RequestType") != null && req.getHeader("RequestType").equalsIgnoreCase("ajax"))) {
request.setCharacterEncoding("utf-8");
} else {
request.setCharacterEncoding("gbk");
}
chain.doFilter(request, response);
}

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Call of Duty Warzone ist ein neu eingeführtes Handyspiel. Viele Spieler sind sehr neugierig, wie sie die Sprache dieses Spiels auf Chinesisch einstellen können. Tatsächlich ist es sehr einfach, das chinesische Sprachpaket herunterzuladen Den detaillierten Inhalt erfahren Sie in dieser Einführung in die chinesische Einstellungsmethode. So stellen Sie die chinesische Sprache für das Handyspiel Call of Duty: Warzone ein 1. Rufen Sie zunächst das Spiel auf und klicken Sie auf das Einstellungssymbol in der oberen rechten Ecke der Benutzeroberfläche. 2. Suchen Sie in der angezeigten Menüleiste die Option [Herunterladen] und klicken Sie darauf. 3. Wählen Sie auf dieser Seite [SIMPLIFIEDCHINESE] (vereinfachtes Chinesisch), um das Installationspaket für vereinfachtes Chinesisch herunterzuladen. 4. Kehren Sie zu den Einstellungen zurück

Excel-Tabelle ist eine der Office-Software, die viele Benutzer verwenden, da ihr Computer ein Win11-System ist und daher die englische Benutzeroberfläche angezeigt wird. Sie möchten auf die chinesische Benutzeroberfläche umsteigen, wissen aber nicht, wie man sie bedient Um dieses Problem zu lösen, ist der Herausgeber hier, um die Fragen aller Benutzer zu beantworten. Werfen wir einen Blick auf den Inhalt des heutigen Software-Tutorials. Anleitung zum Umstellen von Excel auf Chinesisch: 1. Rufen Sie die Software auf und klicken Sie links in der Symbolleiste oben auf der Seite auf die Option „Datei“. 2. Wählen Sie „Optionen“ aus den unten aufgeführten Optionen. 3. Nachdem Sie die neue Benutzeroberfläche aufgerufen haben, klicken Sie links auf die Option „Sprache“.

So zeigen Sie chinesische Schriftzeichen in PHPDompdf korrekt an. Wenn Sie PHPDompdf zum Generieren von PDF-Dateien verwenden, besteht häufig die Herausforderung, dass das Problem verstümmelter chinesischer Schriftzeichen auftritt. Dies liegt daran, dass die von Dompdf standardmäßig verwendete Schriftartenbibliothek keine chinesischen Zeichensätze enthält. Um chinesische Schriftzeichen korrekt anzuzeigen, müssen wir die Schriftart von Dompdf manuell festlegen und sicherstellen, dass eine Schriftart ausgewählt wird, die chinesische Schriftzeichen unterstützt. Hier sind einige spezifische Schritte und Codebeispiele, um dieses Problem zu lösen: Schritt 1: Laden Sie die chinesische Schriftartdatei herunter. Zuerst benötigen wir

Titel: Eine effektive Möglichkeit, verstümmelte chinesische Zeichen in PHPDompdf zu reparieren. Bei der Verwendung von PHPDompdf zum Generieren von PDF-Dokumenten sind verstümmelte chinesische Zeichen ein häufiges Problem. Dieses Problem ist in der Regel darauf zurückzuführen, dass Dompdf standardmäßig keine chinesischen Zeichensätze unterstützt, was dazu führt, dass chinesische Inhalte nicht korrekt angezeigt werden. Um dieses Problem zu lösen, müssen wir einige effektive Wege finden, um das chinesische verstümmelte Problem von PHPDompdf zu beheben. 1. Verwenden Sie benutzerdefinierte Schriftartdateien, um das Problem verstümmelter chinesischer Zeichen in Dompdf zu lösen

VSCode-Setup auf Chinesisch: Eine vollständige Anleitung In der Softwareentwicklung ist Visual Studio Code (kurz VSCode) eine häufig verwendete integrierte Entwicklungsumgebung. Für Entwickler, die Chinesisch verwenden, kann die Einstellung von VSCode auf die chinesische Schnittstelle die Arbeitseffizienz verbessern. In diesem Artikel erhalten Sie eine vollständige Anleitung, die detailliert beschreibt, wie Sie VSCode auf eine chinesische Schnittstelle einstellen, und spezifische Codebeispiele bereitstellt. Schritt 1: Laden Sie das Sprachpaket herunter und installieren Sie es. Klicken Sie nach dem Öffnen von VSCode auf links

„WWE2K24“ ist ein von Visual Concepts entwickeltes Rennsportspiel, das am 9. März 2024 offiziell veröffentlicht wurde. Dieses Spiel wurde hoch gelobt und viele Spieler sind gespannt, ob es eine chinesische Version geben wird. Leider hat „WWE2K24“ bisher noch keine chinesische Sprachversion veröffentlicht. Wird wwe2k24 auf Chinesisch sein? Antwort: Chinesisch wird derzeit nicht unterstützt. Die Standardversion von WWE2K24 in der chinesischen Steam-Region kostet 199 Yuan, die Deluxe-Version 329 Yuan und die Gedenkausgabe 395 Yuan. Das Spiel stellt relativ hohe Konfigurationsanforderungen und es gibt bestimmte Standards in Bezug auf Prozessor, Grafikkarte oder laufenden Speicher. Offizielle empfohlene Konfiguration und Einführung in die Mindestkonfiguration:

Tipps zum Lösen chinesischer verstümmelter Zeichen, die von PHP in TXT-Dateien geschrieben wurden. Mit der rasanten Entwicklung des Internets wird PHP als weit verbreitete Programmiersprache von immer mehr Entwicklern verwendet. Bei der PHP-Entwicklung ist es häufig erforderlich, Textdateien zu lesen und zu schreiben, einschließlich TXT-Dateien, die chinesische Inhalte schreiben. Aufgrund von Problemen mit dem Codierungsformat erscheint die chinesische Schrift jedoch manchmal verstümmelt. In diesem Artikel werden einige Techniken zur Lösung des Problems chinesischer verstümmelter Zeichen, die von PHP in TXT-Dateien geschrieben werden, vorgestellt und spezifische Codebeispiele bereitgestellt. Problemanalyse in PHP, Text

Titel: Methoden und Codebeispiele zur Lösung des Problems verstümmelter chinesischer Daten, die in Oracle importiert werden. Beim Importieren chinesischer Daten in die Oracle-Datenbank treten häufig verstümmelte Zeichen auf. Dies kann auf falsche Datenbank-Zeichensatzeinstellungen oder Probleme bei der Kodierungskonvertierung zurückzuführen sein. . Um dieses Problem zu lösen, können wir einige Methoden anwenden, um sicherzustellen, dass die importierten chinesischen Daten korrekt angezeigt werden können. Im Folgenden finden Sie einige Lösungen und spezifische Codebeispiele: 1. Überprüfen Sie die Zeichensatzeinstellungen der Datenbank. In der Oracle-Datenbank sind die Zeichensatzeinstellungen
