Приветствую всех!
Есть следующая задача.
function testfunction() {
var objForm = $('testform');
var myCallback = function(responseText) {
var result = Json.evaluate(responseText);
return;
}
var opt = {
method: 'post',
data: objForm,
onComplete: myCallback,
evalScripts: true
}
new Ajax(siteURL + '/index.php', opt).request();
return false;
}
При клике по ссылке вызывается функция testfunction(), которая отправляет посредством аякса запрос на сервер и в зависимости от данных формы возвращает набор данных.
После чего, используя полученные данные необходимо открыть окно
window.open(URL, "blank", 'scrollbars=0, resizable=1, menubar=0, left=' + left + ', top=' + top + ', width=' + width + ', height=' + height + ', toolbar=0, status=0');
Все работает если открытие окна происходит в теле callback функции, но в этом случае браузер блокирует это окно.
Если же открывать это окно после строки отправки запроса
new Ajax(siteURL + '/index.php', opt).request();
браузер открывает это окно даже не пискнув. Я так понимаю что он блокирует окно которое открывается имеено из callback функции, как-будто оно открывается без ведома пользователя.
Вопрос в следующем: как заставить браузер не блокировать окно, либо как вернуть данные из callback функции и выполнить скрипт с этими данными вне callback функции.
Буду рад любой помощи. просто ткните в какую сторону копать