ajaxed無限スクロールを使用するときにギリシャ語のテキストをデコードするのに問題があります。英語以外のデータを扱うのは初めてですが、ギリシャ語のキャラクターをエスケープする必要があると理解している限り、そうでなければAjaxは文字を送信しようとしているため、jQuery/Ajax - 非ラテン・データのデコード。ギリシャ文字をエスケープする方法
私はこの(PHP)でエスケープすることにより、それがアヤックスに優しいます
function utf8ize($d) { // Encoding workaround
if(is_array($d)) {
foreach ($d as $k => $v) {
$d[$k] = utf8ize($v);
}
} elseif (is_string ($d)) {
return utf8_encode($d);
}
return $d;
}
ので、この
Το γράμμα άλφα (ἄλφα) είναι το πρώτο γράμμα του ελληνικού αλφαβήτου.
はこのようになります。
どのようにテキストであるΤο γÏάμμα άλφα (ἄλφα) είναι το Ï€Ïώτο γÏάμμα του ÎµÎ»Î»Î·Î½Î¹ÎºÎ¿Ï Î±Î»Ï†Î±Î²Î®Ï„Î¿Ï….
私の英国 - ロケールデータベースでは生のように見えます。しかし、今ではフロントエンドでギリシャ語に戻す方法がわかりません。
通常、私は成功したフロントエンド上の非基本ラテンカフェ、婚約者、ファサードのような言葉のバックエンドにPHPのはutf8_encodeを使用して、jQueryのは、decodeURIComponentをデコードするだろうが、ギリシャでこのエラーがアップ
URIError: URI malformed
されていますutf-8をフロントエンドでギリシャ語をサポートする別のフォーマットに変換する組み込みのjQuery関数がありますか?
これは、デフォルトの負荷にどのように見えるかです:
そして、これは私がアヤックス
これはPHPの問題で、jQueryの問題ではありません。jQuery( "ブラウザ"を読む)は、ギリシャ文字列をうまく扱うことができます。正しく送信しているわけではありません。あなたがクライアント上で行う必要がある(またはできる)ことは絶対にありません。サーバー側を修正する必要があります。これは、単純で単純なことを意味します。データをUTF-8として送信し、UTF-8として(Content-Typeヘッダー経由で)*アナウンスします。これが修正されると、クライアントが動作し始めます。 – Tomalak
これは間違いなくあなたが開始する必要があります:http://stackoverflow.com/questions/279170/utf-8-all-the-way-through – Tomalak
私のための作品:https://jsfiddle.net/nhyeLu5v/ – Hackerman