2

私は AJAX の初心者で、以下のコードを実行しようとしていますが、機能していません... Ajax_info.txt ファイルは私のローカル ドライブにあります。

<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
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("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","c:/python27/ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>

</body>
</html>
4

3 に答える 3

0

通常、セキュリティ上の問題により、ブラウザはローカルファイルを開きません。ブラウザによっては、参照しているHTMLファイルもローカルにロードされている場合、技術的には同じドメインにあるため、ブラウザが開く可能性があると思います。通常、AJAXを使用する場合は、Webサーバー上のファイルを使用します(Webサーバーがローカルでホストされている場合でも)。いずれにせよ、それが機能する場合は、ローカルファイルからステータス0、ステータス200を受け取ります。ステータス200はHTTPプロトコルのステータスであり、HTTP経由でロードされていないため、ローカルファイルには返されません。

于 2012-12-20T03:50:27.333 に答える
0

このコードを参照して実行し、このようなパラメータを指定する必要があります

    xmlhttp.open("GET","?c:/python27/ajax_info.txt",true);

divに何を表示したいか教えてください

                <!DOCTYPE html>
            <html>
            <head>
            <script>
            function loadXMLDoc()
            {

            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)
                {

                var str = xmlhttp.responseText
                alert(str)
                document.getElementById("myDiv").innerHTML="change";
                }
              }
            xmlhttp.open("GET","?c:/python27/ajax_info.txt",true);
            xmlhttp.send(null);
            }
            </script>
            </head>
            <body>


            <button type="button" onclick="loadXMLDoc()">Change Content</button>
            <div id="myDiv" >Let AJAX change this text</div>
            </body>
            </html>
于 2012-12-20T03:57:35.877 に答える
0

私も同じ問題を抱えていました。を削除しましたがif (xmlhttp.readyState==4 && xmlhttp.status==200)、うまくいきました。

于 2012-12-20T03:38:41.800 に答える