2010-03-25 2 views
0

У меня есть модальное диалоговое окно, представленное в пользовательском интерфейсе Yahoo. Пользователь выбирает значение из диалогового окна «А», а затем я хочу представить другое модальное диалоговое окно для сбора еще нескольких данных в диалоговом окне «В».Как «цепочка» модальных диалогов в YUI 2?

Я успешно использовал YAHOO.widget.Dialog. Проблема заключается в том, что вы не можете инициировать диалоговое окно «B» из функции обработчика диалога «A». Итак, как вы можете программно запустить второе диалоговое окно после того, как пользователь нажмет кнопку «ОК» на первом?

(я пытался создать дополнительный Listener для поля, который обновляется в диалоге «A», чтобы вызвать диалоговое окно «B», но это не работает.)

Спасибо ..

+0

Звучит сломанно. Возможно, вы можете «обойти» ограничение, используя setTimeout, чтобы открыть «B» после закрытия «A». Или, если вы можете закрыть «A» в обработчике, возможно, вы можете сразу открыть «B». – 2010-03-26 01:47:12

+0

Таймер, к сожалению, неуместен. Требуется поведение, управляемое пользователем. И нет, это не сломано. Это ограничение рамки. Тем не менее, я уверен, что он разрешимый, просто нужен кто-то с большим опытом работы с YUI, чтобы указать мне в правильном направлении. – giulio

+0

Кажется, что это должно сработать - наверное, я что-то упустил в вопросе. У меня есть модальный диалог (для редактирования некоторых данных) с кнопками сохранения и отмены. Функция onclick кнопки сохранения запускает второй «пожалуйста, подождите» модальный диалог. –

ответ

1

Ознакомьтесь с документацией: http://developer.yahoo.com/yui/container/dialog/#events. Следующий код должен сделать трюк:

var firstDialog = new YAHOO.widget.Dialog('firstDialog', { postmethod: "manual" }); 

firstDialog.manualSubmitEvent.subscribe(function (type, args) { 

    var nextDialog = new YAHOO.widget.Dialog('nextDialog', { }); 

    /* more configuration stuff... */ 

    nextDialog.render(); 
    nextDialog.show(); 

}); 

firstDialog.render(); 
firstDialog.show(); 

Это ручка, когда форма должна быть представлена, который я думаю, что вы имеете в виду выбирает значение, но если не дайте мне знать, и я могу дать некоторую помощь по этому поводу ситуация.

+0

спасибо за указатель .. я никогда не понимал, что «manualsubmitevent». YUI достаточно мощный, но все еще нуждается в более ясном doco .. позволит вам знать – giulio

Смежные вопросы