2014-08-26 4 views
-1

привет. Когда я нажимаю кнопку «Внешний контент», я получаю предупреждение о javascript, в котором говорится «Not Found» (это текст состояния ошибки).Ошибка JQuery AJAX «Не найдено»

Почему он не может найти текстовый файл, который я пытаюсь загрузить через ajax?

Это моя иерархия папок:

--public_html 
    --app 
    --ajaxTestHome.php 
    --ajaxTestText.txt 

И это файл я пытаюсь загрузить (через AJAX) текстовый файл в.

//ajaxTestHome.php 
    <!DOCTYPE html> 
    <html> 
    <head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
    <script> 
    $(document).ready(function(){ 
     $("#ajax").click(function(){ 
     $.ajax(
      { 
       url:"/app/ajaxTestText.txt", 
       success:function(result){ 
        $("#div1").html(result); 
       }, 
       error: function(abc) { 
        alert(abc.statusText); 
       }, 
       cache: false 
      } 
     ); 
     }); 
    }); 
    </script> 
    </head> 
    <body> 

    <div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div> 

    <button id="ajax">Get External Content</button> 
    </body> 
    </html> 

EDIT: У меня была опечатка в вопросе. файл называется «ajaxTestText.txt», а не «ajaxTestTest.txt»

+2

Ещё просто удалите приложение/app /. Вы ищете ajaxTestText.txt внутри/public_html/app/app /, если вы это сделаете. – icecub

+0

Вы можете запросить файл '.txt' напрямую через адресную строку браузера,' curl' и т. Д., А не Ajax? И как вы получаете доступ к файлу '.php'? 'http: // localhost/app/ajaxTestHome.php' или подобное? –

ответ

0

Я нашел решение.

Проблема не имеет ничего общего с тем, что она находится в неправильном каталоге, или я ссылаюсь на файл с или без «/» или «/ app /» или «app /».

Скорее я изменил расширение с .txt на .html. Я получал доступ к этому с сервера, на котором я работал FTP, и я полагаю, что сервер не позволит вам увидеть/получить доступ к содержимому файла txt, но будет ли HTML? Если вы узнаете, пожалуйста, просветите меня.

+0

Возможно, права на файл были неправильными? – Sebastien

0

Вам не нужно использовать /app/ в адресе.

Кроме того, ваш файл называется ajaxTestTest.txt и URL вы звоните, ajaxTestText.txt они имеют разные названия

+0

Я попробовал это без приложения /, и он все еще сказал «Не найдено». Также файл на самом деле называется «ajaxTestTest.txt». Я неправильно набрал его в своем вопросе. – johnsimer

+0

@johnsimer, что именно вы пробовали, когда вы пробовали его без '/ app /', вы попробовали 'ajaxTestTest.txt' или'/ajaxTestTest.txt', оставив ведущий '/'? Если в начале было '/', это заставило бы его посмотреть в корневом каталоге сервера вместо текущего каталога. 'url:" ajaxTestText.txt "' должен искать файл в нужном месте. –

0

Параметр URL неверен:

$(document).ready(function(){ 
     $("#ajax").click(function(){ 
     $.ajax(
      { 
       url:"ajaxTestText.txt", 
       success:function(result){ 
        $("#div1").html(result); 
       }, 
       error: function(abc) { 
        alert(abc.statusText); 
       }, 
       cache: false 
      } 
     ); 
     }); 
    }); 
+0

Я получаю ту же ошибку «Not FOund» – johnsimer