У меня есть сценарий загрузки jQuery, который странно работает с текстовым файлом, размещенным в одном месте, но не в другом. Например, это:
$(document).ready(function () {
$("button").click(function () {
$("#div10").load("https://dl.dropboxusercontent.com/u/29635158/replace.txt", function () {
alert("Done Loading");
});
});
});
... отлично работает и может загрузить документ.txt из моего Dropbox.
Но это:
$(document).ready(function () {
$("button").click(function () {
$("#div10").load("http://hs.biocanvas.net/files/replace.txt", function () {
alert("Done Loading");
});
});
});
... это тот же самый скрипт с тем же самым .txt
файлом, за исключением того, что .txt
файл теперь размещен на другом сервере (и соответственно URL-адрес изменен в скрипте). Однако .txt
файл не загружается в целевой div.
Оба .txt
файла читаются, если вы copy + paste их URL-адреса в браузере.
Есть предположения? Спасибо за вашу помощь.
Проблема может быть кросс-доменным запросом. Если вы используете PHP или другие серверные технологии, вам необходимо разрешить разрешения в вашем приложении, но если вы используете телефонную развязку, это не обязательно.
Access-Control-Allow-Origin: http://example.org/
Или, если его общественный ресурс:
Access-Control-Allow-Origin: *
В качестве ссылки вы можете прочитать этот пост: HTTP access control (CORS) Developer mozilla
Немного поздно, но для подтверждения ответа user3294396, если вы запустите код и посмотрите в консоли, вы, вероятно, увидите ошибку, например:
XMLHttpRequest cannot load http://hs.biocanvas.net/files/replace.txt. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
Поэтому вам нужно настроить явный доступ на сервере.