Я только начал изучать ajax на сайте W3Schools. На странице Попробуйте редактор на странице W3Schools.com, когда я попробую следующее code Я получаю правильный ответ, как и следовало ожидать от кода. Вы также можете попробовать код, просто скопировав и вставив на страницу с данной ссылкой «Отправить код», нажав кнопку «Изменить содержимое» в ответе.
<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==0)
{
document.getElementById("myDiv").innerHTML="0: request not initialized";
}if (xmlhttp.readyState==1)
{
document.getElementById("myDiv").innerHTML="Server connection establish";
}if (xmlhttp.readyState==2)
{
document.getElementById("myDiv").innerHTML="Request has been sent";
}if (xmlhttp.readyState==3)
{
document.getElementById("myDiv").innerHTML="Server is processing the request";
}
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","http://www.w3schools.com/ajax/ajax_example.asp",true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>
</body>
</html>
Но когда я пробую тот же код в своем собственном html-файле и нажимаю кнопку «изменить содержимое», я получаю изменение в этом порядке (пожалуйста, не обращайте внимания на ошибки типа)
- соединение с сервером установлено
- Запрос был отправлен.
После этого ничего не происходит. Я подключен к Интернету и могу открыть ссылку в браузере (Firefox). Что мне делать?
1 ответ
Вы не можете получить доступ к другому адресу домена с помощью ajax из кода, написанного в вашем локальном html-файле. Междоменные запросы ajax требуют, чтобы вы использовали jsonp
для доступа к этим данным.
В первом случае, поскольку вы уже находитесь в домене w3schools при выполнении запроса ajax, он будет работать.
Похожие вопросы
Новые вопросы
jquery
jQuery — это библиотека JavaScript. Также рассмотрите возможность добавления тега JavaScript. jQuery — это популярная кросс-браузерная библиотека JavaScript, которая упрощает обход объектной модели документа (DOM), обработку событий, анимацию и взаимодействие AJAX, сводя к минимуму расхождения между браузерами. Вопрос с тегом jQuery должен быть связан с jQuery, поэтому jQuery должен использоваться рассматриваемым кодом, и в вопросе должны быть как минимум элементы, связанные с использованием jQuery.