ホームページ  >  記事  >  ウェブフロントエンド  >  jquery ajaxが文字化けしたコードを送信した場合の対処方法

jquery ajaxが文字化けしたコードを送信した場合の対処方法

藏色散人
藏色散人オリジナル
2021-01-07 09:52:452231ブラウズ

jquery ajax 送信による文字化けコードの解決策: 1. エンコード設定を統一する; 2. post メソッドを使用してパラメータを渡す; 3. js フロントエンドでエンコードをエスケープし、バックグラウンドでデコードして取得するデータ; 4. contentType をグローバルに設定し、エンコーディングを指定します。

jquery ajaxが文字化けしたコードを送信した場合の対処方法

このチュートリアルの動作環境: Windows7 システム、jquery1.10.0 バージョン、Dell G3 コンピューター。

推奨: jquery チュートリアル

jquery ajax が文字化けしたデータを送信した場合はどうすればよいですか?

jqueryを使用してhtml5アプリケーションを処理すると、Firefoxでのテストは正常ですが、ユーザーがパッドでアクセスすると文字化けすると表示されます。自分でテストしてみたところ、案の定、 ChromeやIEのカーネルでは誰もがこの問題を抱えていることが分かりました。ページ属性がutf-8に設定されている場合、Firefoxだけがcharset=utf-8ヘッダファイルを送信します。ChromeとIEはそれを指定していないため、文字化けが表示されます.

解決策:

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

$.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

It中国語には 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 ajaxが文字化けしたコードを送信した場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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