Jump to content
  • 0

$.get ошибка при загрузке содержимого файла


rk48
 Share

Question

Здравствуйте,

 

Хочу получить данные из другого файла, но получаю ошибку 404

jQuery(document).ready(function() {    var jqxhr = $.get("item.html", function (data) {        alert("success" + data);    })     .success(function () { alert("second success"); })     .error(function (data, codeError) {         if (codeError == 'parsererror')             alert('Возникла ошибка при получении данных с сервера! (' + codeError + ')');         else             alert('Сервер не отвечает! Код ошибки: ' + data.status + '\n codeError = ' + codeError);     })     .complete(function () { //alert("complete");     });});

Ошибка: Сервер не отвечает! Код ошибки:404

выходит всегда кроме того случая когда я подгружаю index.html - это именно тот документ из которого я вызываю эту функцию.

 

Как быть?

 

 

 

Link to comment
Share on other sites

15 answers to this question

Recommended Posts

  • 0

1. страница на том же сайте, рядом со страницей index.html

2. запускается локально

сейчас попробую загрузить на сервер


заработало! СПАСИБО!!!


а как сделать так, чтобы работало локально?

Link to comment
Share on other sites

  • 0

Хм, а не локально ли запускается? Возникло подозрение - ajax get только через сервер работает?

Нет. Функция работает локально, но только в пределах сайта (исключение — jsonp)

 

Запустите функцию phpinfo() и посмотрите в таблице в разделе json включен  ли параметр json support. Скорее всего неправильно настроен локальный сервер.

Edited by Radiocity
Link to comment
Share on other sites

  • 0

у меня нет php, у меня только html, css, js, jquery


но функция

 

var jqxhr = $.get("item.html", function (data) {
alert("success" + data);
})

 

локально почему то не работает, а когда на сервер загрузил начала работать

Edited by rk48
Link to comment
Share on other sites

  • 0

Функция работает локально. Проверьте, подключен ли jquery.js, настраивайте сервер.

 

но у меня только html, css, js, jquery поэтому локальная версия не отличается ничем от той, которая лежит на сервере. Я просто копирую сайт из папки на компьютере на сайт и все. После этого этот код

var jqxhr = $.get("item.html", function (data) {

alert("success" + data);

})

начинает работать, а локально не работает.

Link to comment
Share on other sites

  • 0

1. страница на том же сайте, рядом со страницей index.html

2. запускается локально

 

Именно это натолкнуло меня на мысль об использовании LAMP сервера, на котором все будет работать.

Если файлы просто запускаются из папки (без использования сервера), то запрос блокируется браузером из-за same origin policy.

Edited by Radiocity
Link to comment
Share on other sites

  • 0

 

1. страница на том же сайте, рядом со страницей index.html

2. запускается локально

 

Именно это натолкнуло меня на мысль об использовании LAMP сервера, на котором все будет работать.

Если файлы просто запускаются из папки (без использования сервера), то запрос блокируется браузером из-за same origin policy.

 

 

а можно как-то отключить эту блокировку? потому что очень уж удобно редактировать сайт локально и жаль отказываться от этого только из-за одной команды $.get("item.html", ...

 

кроме того, кстати, $.get("INDEX.html" ...

почему-то работает всегда в том числе и локально

 

а вообще эту команду я использую только для того чтобы избежать дублирования кода на страницах html. У меня есть код, который одинаковый на всех страницах и вот его я хочу научиться загружать из внешней страницы, как это делается, например в мастер-страницах в ASP.NET MVC

Может быть есть какой-нибудь другой способ загружать повторяющиеся данные на все страницы?

Локально мы имели в виду по запуску двойным кликом хтмл файла. А вы я так понимаю имеете в виду на сервере в пределах сервера.

я тоже так имел ввиду, локально это у себя на компьютере. Но у меня на этом сайте нет никаких серверных скриптов, поэтому, по идее, он должен одинаково работать, что локально, что на хостинге, без всяких изменений. Он так и работает кроме команды $get(

Link to comment
Share on other sites

  • 0

Установите локальный сервер и будет вам счастье.

http://open-server.ru

Так понял, что вам нужно делать шаблонизацию, но нет возможности использовать php. Тогда вам возможно подойдет данная библиотека http://mustache.github.io Сам ее не пробовал, но многих он устраивает.

А можно пойти по стопам Расмуса Лердорфа и написать приложение для шаблонизации на cgi :)

Edited by Radiocity
Link to comment
Share on other sites

  • 0

браузер firefox насколько я помню поддерживал локальные запросы через AJAX(помоему единственный из оставшихся). А вообще установить apache+php на локале рас плюнуть - несколько кликов мышкой. И делай что хочешь.

 

ЗЫ всяческие денверы это от лукавого имхо.

Link to comment
Share on other sites

  • 0

у меня не работал скрипт аякса на основе   jquery только IE...

  $.ajax({                              url:"pub1.html",                              dataType: "html",                              cache: false,                              type:"POST"                            }).done(function(data){                               contejer.html(data);                                }).                                fail(function( jqXHR, textStatus ) {                                    alert( "Request failed: " + textStatus );                                }); 

причина была что в загружаемой им  странице был скрипт Cufon

<script language="JavaScript" src="js/cufon-yui.js"></script> 

а он грузил что то с удаленого сервера...везде работало а в ишаке нет ...в консоли писало 

Доступ запрещен

Edited by aleks_lv
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy