Духовность™
Продвинутый новичок
Ajax и асинхронный запрос
Решил написать класс для аякса. Всё бы ничего, да только "влип" на асинхронном запросе:
как видно из кода, сложность заключается в том, что обработчик результата req надо вставлять непосредственно в тело onreadystatechange!
Мне очень не нравится этот вариант тем, что при любой нужде использовать асинхронный запрос придется писать точно такой же метод, только вместо myfunction(req); будет myfunction2(req); и т.д. Т.е. тело метода get будет плодиться с небольшими изменениями.
Я прав? Другого выхода нет?
Решил написать класс для аякса. Всё бы ничего, да только "влип" на асинхронном запросе:
PHP:
this.get = function(url, request)
{
req.open('GET', url, true);
req.onreadystatechange = function()
{
if (req.readyState == 4)
{
if (req.status == 200)
{
// вот В ЭТОМ МЕСТЕ (и нигде более) надо что-то делать с req
myfunction(req.responseText); // получаем текст ответа и что-то с ним делаем
}
}
}
req.send(request);
}
Мне очень не нравится этот вариант тем, что при любой нужде использовать асинхронный запрос придется писать точно такой же метод, только вместо myfunction(req); будет myfunction2(req); и т.д. Т.е. тело метода get будет плодиться с небольшими изменениями.
Я прав? Другого выхода нет?