Как дождаться завершения вызова XAJAX, прежде чем делать что-то еще

Мне нужно подождать, пока Xajax не получит ответ от сервера, поэтому я могу использовать этот ответ с плагином Jquery:

В этом примере мне нужно дождаться создания поля выбора (с помощью вызова XAJAX), прежде чем я применю к нему плагин .chosen():

<? $objResponse = new xajaxResponse();
$objResponse->assign($selectID, 'innerHTML', $codeThatCreatesSelectBox);
$objResponse->script('$(function(){ $("#selectID").chosen(); });');
return $objResponse; ?>

Я пытался использовать функцию jquery AjaxComplete(), но, похоже, она не работает, поскольку Jquery и Xajax - это две разные вещи:

$objResponse->script('$("#selectID").ajaxComplete(function() {$("#selectID").chosen(); });');

Как я могу это сделать ?


person Alucard    schedule 06.12.2012    source источник


Ответы (1)


Вам нужно сделать синхронный AJAX-запрос. Разница обсуждается здесь: синхронизация AJAX и разница асинхронности

Вот как вы это делаете в XAJAX: http://community.xajax-project.org/topic/6460/synchonous-requests-with-parameters-fails-completely/

person Benedikt Wölk    schedule 06.12.2012