Это должно работать (у меня нет времени проверять это прямо сейчас.)
function ajaxFunction() { //Added open {
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Removed additional try / catch
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
document.write(ajaxRequest.responseText);
document.myForm.time.value = ajaxRequest.responseText;
}
}; // Added semi-colon to the end of the anonymous function definition
ajaxRequest.open("GET", "http://www.bbc.co.uk", true);
ajaxRequest.send(null);
}
Несколько заметок:
- Пробел не требуется по большей части в Javascript, но правильный отступ делает намного более легким для выявления синтаксических ошибок.
- Когда вы связываете атрибут с анонимной функцией, вам нужно следовать за
}
с ;
- Как только вы поймете, как это работает, покопайтесь в одной из больших библиотек ajax functions / modules. (Обучение - это всегда хорошо, и ajax - это одна из тех областей, которой действительно нужно несколько десятков человеко-часов работы, чтобы преодолеть все различия между браузерами.)
+
ДОПОЛНЕНИЕ:
Междоменные запросы Ajax очень трудно выполнить правильно (т. Е. Безопасно, надежно и без ошибок) - они запрещены для JavaScript непосредственно политикой Same-Domain Origin .
См. этот вопрос и этот вопрос для получения дополнительной информации о предмете и способах его решения с помощью прокси-сервера или jsonp
+
ajax-функция jQuery составляет 325 строк (и это не считая $.ajax.settings
или $.extend()
)