Доброго времени суток.
Имеется функция для выполнения ajax запроса.
function ajax(url, callback, async, method, params, header)
{
var xmlHttp = getXmlHttpRequest();
async = async || false;
params = params || '';
method = method || 'GET';
if (method == 'GET') url += '?'+'searchParams=' +params;
if (header != null) xmlHttp.setRequestHeader('Content-Type', header)
xmlHttp.open(method, url, async);
if (!async)
{
if (params == '') {
xmlHttp.send(null);
}else {
xmlHttp.send(params);
}
callback(xmlHttp.responseText);
}
else
{
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4) {
callback(xmlHttp);
}
};
xmlHttp.send(null);
}
}
Так вот, если я делаю синхронный запрос, т.е:
ajax('...',
function(data){console.log(data)},
false,
'POST',
...);
а когда делаю асинхронный запрос т.е:
ajax('...',
function(data){console.log(data)},
true,
'POST',
...);
то получаю undefined.
Я подозреваю что проблема в моей функции для ajax запроса, гляньте своим опытным глазом и скажите что не так?
Заранее спасибо.