2017-10-20 8 views
0

私は.load jQuery関数に問題があり、これが動作しているように思われるので非常に不満です。私はdivにHTMLコンテンツを読み込もうとしています。 urlパラメータが私のサーバ上に存在するファイルに設定されていると、うまく動作します。つまり、divにコンテンツがロードされています。 しかし、私のサーバ上に存在しないファイルにurlパラメータを意図的に設定した場合、以下のように 'Content Loaded Successfully'として返されます。JQueryロードコールバック関数は常に「成功」​​を返します

Stack Exchangeを検索しましたが、この問題は完全に関連した投稿は見つかりませんでした。私はこれがjQuery/Javascriptの理解をさらに深めることができない理由を知りたいと思います。

編集#1: 私はstatusTextの実際の値を表示するようにコードを修正し、xhr.StatusTextの警告を追加しましたが、実際に何が行われているのか分かりません。私はまた、 'divaboutMe'変数を削除し、jQueryのidセレクタを使用しています。これらのアップデートの後、私はまだかなりの狂った同じ結果を得ています。私は数多くのウェブサイトや自分の本の中にこのコードを見たので、何が間違っているのか分かりません。ここで

が更新されたコードです:

$(document).ready(function() 
{ 
    var url = "8"; 
    $('#aboutMe').load(url, function (responseText, statusText, xhr) 
    { 
     alert('statusText: ' + xhr.statusText) 

     if (statusText === "error") 
      { 
       alert('Error Loading Content:' + statusText) 
      } 
     else 
      { 
       alert('Content Loaded Successfully:' + statusText) 
      } 
    }); 

}); 
+0

「コンテンツの読み込み中にエラーが発生しました」と返されます。 – Keith

+0

存在しないファイルを指しているときに 'statusText'とは何ですか?これは、 "エラー"と等しくないKeithが言うように、別のエラーメッセージである可能性があります。したがって、else節がトリガーされます。 –

+0

こんにちは、statusTextは常に「成功」​​を返しています。 –

答えて

0

まあ、私は私が問題を発見したと思いますが、解決策は、大きな問題が表示されます。私のウェブサイトは、Ubuntuの最新バージョンを使用しているLAMP Stackを持っている私自身の個人用Webサーバー上でホストされています。私のウェブサイトのルートフォルダには、.htaccesファイルがあります。このファイルには、index.phpには存在しないファイルの要求を送信するリダイレクトルールが含まれています。私は.htacessファイルを無効にして、私のサーバ上に存在しないファイルをロードしようとすると、コードが「エラー」を返すようになりました。だから、次に何をするべきかわからないが、他の誰かがこのタイプの行動を経験し、何か提案がある場合に投稿したいと思った。 !ここに私の.htaccessファイルの内容は次のとおりです!

RewriteEngineのRewriteCond%の

{REQUEST_FILENAME}

するRewriteCondの%{REQUEST_FILENAMEを} -d -f

するRewriteCondの%{REQUEST_FILENAME }!-l

のRewriteRule ^(。*)$のindex.phpを?URL = $ 1