0

xamppを使用してコードをテストしています。私はdreamweaverのライブビューを使用しています。ライブビューで、200のxmlhttp.statusコードとエコー出力を返します。しかし、IEまたはFFで表示しようとすると、ステータスコードは0で、出力されません。これはURL(絶対/相対??)に問題があるようだと読みました。複数のURL形式を試しましたが、機能しないようです。

基本的に、javascript関数「result()」を呼び出すhtmlファイルがあります。「result」関数はtest3.phpファイルを実行するために呼び出します。

呼び出されるファイルの場所はC://xampp/htdocs/test/ha/test3.phpです。

file:/// C://xampp/htdocs/test/ha/test3.phpまたはC://xampp/htdocs/test/ha/test3.phpまたはfile:/// xampp / htdocs /test/をテストしましたha / test3.php URL形式(完全なURL)を提案してください。

私のコードは以下のとおりです。この行の相対URLはDWライブビューで機能しますが、FF/IEブラウザーで個別にアクセスした場合は機能しません。

xmlhttp.open("GET","../ha/test3.php",true);

URLを機能させるには、何に置き換える必要がありますか?

TIA

function Result() 
{


xmlhttp = ajaxFunction();
//document.getElementById("results").innerHTML += " ajax function got executed";

xmlhttp.onreadystatechange=function()
  {

  document.getElementById("results").innerHTML += xmlhttp.readyState; //readystate check/debug
  document.getElementById("results").innerHTML += xmlhttp.status; //status check/debug

   if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
      document.getElementById("results").innerHTML += "onreadystate";  //readystate check/debug

      document.getElementById("results").innerHTML += xmlhttp.responseText;



    }

    }
  }//onreadystate bracket



xmlhttp.open("GET","../ha/test3.php",true);

xmlhttp.send();

} //result function bracket
4

1 に答える 1

0

IEまたはFFをディスク上のファイルに向けていて、ファイルがhttp:// localhost / app / blahにajaxを使用し ている場合は、同一生成元ポリシーに違反しています。

これは、Firefoxでabout:configを切り替えて変更できます。

security.fileuri.strict_origin_policy

ブラウザのセキュリティ設定を変更するこのためのJavaスクリプトソリューションもあります。

于 2010-07-26T20:14:38.087 に答える