jquery が中国語の文字化けをシリアル化する理由: [serialize()] は自動的に encodeURIComponent メソッドを呼び出してデータをエンコードします; 解決策: "decodeURIComponent(XXX,true);" を呼び出してデータをデコードします。
関連推奨事項: 「jQuery ビデオ チュートリアル 」
このチュートリアルの動作環境: Windows7 システム、jquery3。 5 バージョンでは、この方法はすべてのブランドのコンピューターに適しています。
プロジェクトで jquery シリアル化メソッドを使用した後、中国語のエンコード形式が変換されていることがわかり、tomcat を直接 utf-8 に設定すれば解決するのかと思いましたが、そうではないことがわかりました。 Google で検索すると、次のような答えが得られました: 特別なレコードは次のとおりです (試してみると機能します)
1:
理由: .serialize()
が自動的に呼び出される encodeURIComponent メソッドを使用してデータをエンコードします。
解決策: decodeURIComponent(XXX,true); を呼び出してデータをデコードします。 #例:
var params = jQuery("#formId").serialize(); // http request parameters. params = decodeURIComponent(params,true);
1. jquery.js ファイルの encodeURIComponent を encodeURI に置き換えます。中国語の文字化けを解決できます。 (どこを変更すればいいのか分かりません、まだ試していません)
2. もう一つの方法は、すべてのjspとxmlの文字セットをUTF-8に設定することです。 (私のファイルはどちらももともと UTF-8 ですが、いくつか不足しているものがあると思います。実現可能かどうかは不明です)
JSP
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
XML
<?xml version="1.0" encoding="UTF-8"?>
その他のプログラミング関連知識については、
プログラミング ビデオ コース以上がjqueryシリアル化の文字化けコードを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。