Согласно Same Origin Policy, SOP не должен применяться к файлу: // protocol, но почему мой код не работает? Я запускаю эту страницу тестирования из своей локальной системы, и у меня есть abc.txt в том же каталоге, что и html-страница. Если я изменю URL-адрес на http://www.google.com/, он тоже не работает. Я не понимаю, почему, может кто-нибудь объяснить?Не удалось создать локальный файл ajax с локальной страницы html
<!doctype html>
<html lang="us">
<head>
<meta charset="utf-8">
<title>jQuery UI Example Page</title>
<link href="css/sunny/jquery-ui-1.10.2.custom.css" rel="stylesheet">
<script src="js/jquery-1.9.1.js"></script>
<script src="js/jquery-ui-1.10.2.custom.js"></script>
<script>
$.support.cors = true;
$(function(){
$(".btn1").button().click(function(){
$.ajax({
url: "abc.txt"
}).done(function(result) {
alert("done");
$(".content").html(result);
}).fail(function() {
alert("error");
});
});
});
</script>
</head>
<body>
<button class="btn1">Click me!</button>
<div class="content"></div>
</body>
</html>
Отредактировано: консоль напечатана, как показано ниже:
XMLHttpRequest не может загрузить файл : /// C:/Users/YC/Desktop/JQuery% 20ajax% 20testing/jquery- щ-1.10.2.custom/JQuery-щ-1.10.2.custom/abc.txt. Происхождение null не разрешено Access-Control-Allow-Origin.
* Это не работает для Firefox, IE тоже.
Попробуйте установить 'dataType:" text ",' option также в вашем вызове ajax .. –
вы можете запустить хром с '--disable-web-security 'или' --allow-file-access-from-files' –
Что говорит консоль –