単純な AJAX アプリケーションを作成して、html ページが ajax.js ファイルを介して php ファイルからデータを取得できるようにします。既にそれらをサーバーに配置しているので、localhost/mypage にアクセスするときに実行する必要がありますが、いくつかの問題があるようで、期待どおりに物事が進まない。
これが私のhtmlファイルです:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" Content="text/html; Charset=UTF-8">
<title>
My Portal
</title>
<link rel="stylesheet" href="style.css" type="text/css"/>
<script type="text/javascript" src="ajax.js"></script>
</head>
<body onload="load()">
<div id="header">
<img src="images/logo.gif" id="logo" alt="Logo"/>
<a href="http://www.google.com">
<img src="images/logo2.png" id="logo2" align="right" alt="google Ltd"/>
</a>
</div>
<div id="container">
<div id="function"></div>
<div id="Display"></div>
<div id="View"></div>
</div>
<div id="footer">
</div>
</body>
</html>
そして、以下はjsファイルです:
function load(){
var xmlhttp;
if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else{ // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function(){
if (xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("function").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","test.php", true);
xmlhttp.send();
}
最後にphpファイルです:
<?php
print "<h1>hgfkegfalhgj</h1>";
?>
私のページに上記の文字列が出力されるはずですが、何も表示されません。どこに問題があるのか教えてもらえますか? ブラウザーで既に JavaScript が有効になっていることを確認したので、html ファイルで js ファイルの関数を呼び出すことができると確信しています。