リンクをクリックすると、PHPファイルにリダイレクトされます。コンテンツはJSONとしてロードおよびフェッチされ、表示されます。そこには問題はありません。
ただし、IEのすべてのバージョンで、コンテンツは"undefined"
、でロードされるコンテンツの前に文字列で表示され$.post(JSON)
ます。
注:要求されたPHPファイルでは、データは。で送信されjson_encode()
ます。
jQueryコード:
$(".letter").click(function(e){
e.preventDefault();
$.ajaxSetup({cache:false});
var letter= $(this).text();
$.post("http://localhost/ajax.php/", {letter:letter},function(data) {
var listdata;
$.each(data, function(i,item) {
listdata += "<tr>";
listdata += "<td>"+item.book_name+"</td>";
listdata += "<td>"+item.author+"</td>";
listdata += "</tr>";
});
$("#result").empty();
$("#result").html(listdata);
},"json"
);
});
HTMLコード:
<div id="letters">
<span class="letter">A</span>
<span class="letter">B</span>
<span class="letter">C</span>
<span class="letter">D</span>
</div>
<h3>My Books </h3>
<table id="result"> </table>
IEブラウザで、次のように表示します。
My Books
undefined
| Science and Tech | Author1 |
| Web Development | Author2 |
このIEの問題をどのように解決できますか?