ホームページ >ウェブフロントエンド >jsチュートリアル >jquery $.postの文字化け問題を解決する方法

jquery $.postの文字化け問題を解決する方法

藏色散人
藏色散人オリジナル
2020-12-21 11:11:362392ブラウズ

jquery $.post の文字化けの解決策: 1. コードを「contentType: "application/x-www-form-urlencoded; charset=utf-8"0」に変更します。 2. コード「$.post」を変更します。 ajax({...})」が使用可能です。

jquery $.postの文字化け問題を解決する方法

このチュートリアルの動作環境: Windows7 システム、jquery1.10.0 バージョンこの方法は、すべてのブランドのコンピューターに適しています。

推奨チュートリアル: jquery ビデオ チュートリアル

jquery $.post の文字化け解決策:

$.ajaxSetup({
  contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
$.post("test.php", { name: "i5a6", time: "2pm" },
   function(data){
     process(data);
   }, "json");

または使用:

$.ajax({
  url:url,
  type:"POST",
  data:data,
  contentType:"application/x-www-form-urlencoded; charset=utf-8",
  dataType:"json",
  success: function(){
    ...
  }
})

最初のものを使用することをお勧めしますが、実際の状況にも基づいています。文字変換に encodeURIComponent を使用することを推奨する人もいます。

ajax によって送信されたデータが文字化けした経験を要約します。

コードの文字化けを回避するには、次の手順を実行できます。

解決策

1. ファイルのコーディング、データベースのコーディング、Web ページのコンテンツ タイプのコーディングなど、コーディングの一貫性を維持します。

Check< ;meta http-equiv=”content-type” content=”text/html; charset=UTF-8″ />

中国語には UTF-8 を使用することをお勧めしますgbk/gb2312 を使用すると発生する可能性があります。文字化けしたコード

2、get の代わりに post を使用して送信します。get メソッドはリンクを通じてパラメータを渡し、自動的に urlEncode (エンコード) を行います。 、各ブラウザのエンコード方法は同じではない可能性があります。 post を使用すると、この状況を回避できます。

3、フロントエンドのエンコードを js でエスケープして送信し、バックグラウンドでデコードしてデータを取得します。

これらはオンラインで検索できます

4、contentType をグローバルに設定し、エンコーディングを指定します

jquery ajax はデータのエンコードと送信に utf-8 を使用するため、IE は送信時に charset=utf-8 を追加しないため、文字化けが発生します (IE は iso-8 を使用します)。デフォルトでは 8859-1 エンコーディング)

コードは次のとおりです:

$.ajaxSetup({
 contentType: "application/x-www-form-urlencoded; charset=utf-8"
});

以上がjquery $.postの文字化け問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。