Ajax・jQueryでGET時にIEで文字化け
Ajax・jQueryで日本語をGETするとき、IEで文字化けします。
(Firefox,chromeでは文字化けは起こりません。IE6/7/8で確認すると文字化けします)
どのようにしたら文字化けが起こらなくなるか教えていただければと思います。
環境
PHP:5.1.6
サーバー・HTMLの文字コードはUTF-8
下記のようなリンクを作り、「jquery.url.js」でパラメータを取得しています。
<a href="./test.php?keyword=テスト&cate=1">
(実際には下記のソースに示しますが、テストの文字はurlencordしています。)
【javascript部分】
<script type="text/javascript" src="jquery.url.js"></script>
<script type="text/javascript">
$().ready ( function() {
$('#sample-get').find('a').click ( function() {
var url = $.url ( $(this).attr('href') );
$.ajax ({
type: 'GET',
url: 'send.php',
cache: false,
data: url.attr ( 'query' ),
success: function ( data, dataType ) {
$('#test').html ( data );
},
error: function ( XMLHttpRequest, textStatus, errorThrown ) {
this;
alert('Error : ' + errorThrown);
}
});
return false;
});
【HTML(PHP)部分】
$keyword='テスト';
$keyword=urlencord($keyword);//urlエンコード
echo<<<EOF
<div id="sample-get">
<a href="./test.php?keyword=$keyword&cate=1"><img src="images/sample1.png" alt="sample1" height="200" width="200"></a>
</div>
EOF;
【PHP部分(send.php)】
<?php
echo $_GET['keyword'];
echo urldecord($_GET['keyword']);
echo $_GET['cate'];
?>
お礼
回答ありがとうございました