Linux マシンに Appache と PHP を新規インストールしました。これは、物事がどのように機能するかをテストするために思いついた最初のスクリプトです。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5//EN"
"http://www.w3.org/TR/html5/html5.dtd"
>
<html lang="en">
<head>
<title>First Ajax</title>
<script language="javascript" type="text/javascript">
var xmlhttp;
function getNum()
{
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = callback;
xmlhttp.open("GET" , "random.php" , true);
xmlhttp.send();
}
//When Information comes back from the server
function callback()
{
if(xmlhttp.readyState==4 && xmlhttp.status==200)
{
alert("Ready")
document.getElementById('result').innerHTML = xmlhttp.responseText;
}
else
{
alert("Nope")
}
}
</script>
</head>
<body>
<div id="result">
</div>
<input type="button" value="Get Random Number" onclick="getNum()"/>
</body>
</html>
しかし、xmlhttp.readyState==4 && xmlhttp.status==200
「いいえ」が返されるため、この行は false と評価されるようです。に置き換え&&
ても同じです||
。ブラウザから localhost/random.php にアクセスすると、問題なく動作します。正確なコードが他のコンピューターで機能することは知っています。私が立ち往生している場所のアイデアはありますか?
編集: @Musa のコメントで、readyState が 1 に等しく、status が 0 であることを認識しました。これは、オブジェクトが作成され、send メソッドが呼び出されていないことを意味します ( http://msdn.microsoft.com/en- us/library/ms753800%28v=vs.85%29.aspx ) . とにかくまだ迷っています。