Привет, помогите пожалуйста кто-нибудь разобраться с такой проблемой.
ajax.js
Код:
|
function createHttpRequest() {
var httpRequest;
var browser = navigator.appName;
if (browser == "Microsoft Internet Explorer") {
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
} else {
httpRequest = new XMLHttpRequest();
}
return httpRequest;
}
function sendRequest(file, _resultId, getRequestProc) {
resultId = _resultId;
document.getElementById(resultId).innerHTML = 'Подождите, идет загрузка...';
httpRequest.open('get', file);
httpRequest.onreadystatechange = getRequestProc;
httpRequest.send(null);
}
function getRequest() {
if (httpRequest.readyState == 4) {
document.getElementById(resultId).innerHTML = httpRequest.responseText;
}
}
var httpRequest = createHttpRequest();
var resultId = ''; |
На страничке исполняется ява код и внутри него с помощью ajax.js дергается скрипт на сервере.
Проблема заключается в том,
1) что не знаю как результат работы скрипта загнать не в блок на странице а в переменную явы.
2) что скрипт на сервере работает примерно 3 секунды. Но ява сценарий на странице не ждет пока отработает скрипт на сервере, а после вызова его через аякс, идет дальше.
Как сделать так чтобы ява сценарий ждал окончания работы скрипта на сервере ? т.к. его дальнейшая работа должна зависеть от того, что вернул скрипт ОК или ERROR
Помогите плз кто знает ...
Код:
|
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Привет, мир AJAX'a</title>
<script language="JavaScript" src="ajax.js" type="text/javascript"></script>
<script language="JavaScript" type="text/javascript">
function sendSearchRequest() {
sendRequest('search.php?q=' + document.getElementById('searchQuery').value, 'result', getRequest);
}
</script>
</head>
<body>
Введите текст для поиска:
<input id="searchQuery" type="button" size="30" maxlength="30" onClick="javascript: sendSearchRequest();">
<hr />
<p id="result">Здесь будет результат запроса</p>
</body>
</html> |