Модальные Диалоги В Xpage

Тема в разделе "Lotus - Xpages", создана пользователем lionk, 30 авг 2013.

  1. lionk

    lionk Well-Known Member

    Регистрация:
    5 апр 2007
    Сообщения:
    308
    Симпатии:
    3
    создаю диалоговое окно:
    Код (Text):
    var dialog = dijit.byId("dialogId");
    if (dialog) { dialog.destroyRecursive(); }
    var url='piclist.xsp'+'?picViewName=SelDocType';
    var dialog = new dijit.Dialog({
    title:"Field Profile",
    id: "dialogId",
    href:url,
    refreshOnShow: true,
    preventCache: true
    });
    dialog.show();

    в него подгружается страница с списком(представлением), и кнопочками. Но нажимая на них ничего не происходит. CSJS не выполняется. Даже переход по страницам представления не работает. Хотя если открыть страницу на прямую то всё работает. В чём может быть причина?
    Если у кого то есть гайд под рукой как настраивать диалоги(с загрузкой содержимого) поделитесь. Очень надо.
     
  2. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.052
    Симпатии:
    146
  3. lionk

    lionk Well-Known Member

    Регистрация:
    5 апр 2007
    Сообщения:
    308
    Симпатии:
    3
    в заголовке же указал что "в соотведствующем разделе глуховато"

    Это же велосипедная функция, с ней все должны были стыкаться.
    Неужели все диалоги создают при загрузке страницы а потом только делают их visible?
     
  4. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Проблема похоже в регистрации событий кнопок... ну или что-то наковырять надо.
    Тоже попробовал повторить. В piclist.xsp разместил кнопку с кодом
    Код (Text):
    alert('TEST')
    Не работает.

    Заменил кнопку на такую конструкцию
    Код (Text):
    <a href="#" onclick="alert('TEST')">Link</a>
    Все нормально, но этого мало... без всех событий диалог не построить...
     
  5. lionk

    lionk Well-Known Member

    Регистрация:
    5 апр 2007
    Сообщения:
    308
    Симпатии:
    3
    вот тут описана проблема http://dontpanic82.blogspot.com/2010/02/xp...works-with.html
    Есть пример как ввести диалог в ДОМ-дерево главной FORM тогда с предсозданным диалогом всё работает.
    Но вопрос остаётся открытым для подгружаемых страниц. Может кто то знает как добавить функции с подгружаемой страницы в контекст текущей XPage?
     
  6. aameno2

    aameno2 Well-Known Member

    Регистрация:
    27 янв 2009
    Сообщения:
    484
    Симпатии:
    12
    А диалог из extlib использовать?
     
  7. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Большой недостаток этих диалогов - они всегда есть на странице.. и дизайнерить не удобно...
     
  8. aameno2

    aameno2 Well-Known Member

    Регистрация:
    27 янв 2009
    Сообщения:
    484
    Симпатии:
    12
    Я собираю страницу из custom`ов, даже не задумывался....в чем не удобство?
    Из последнего только rich edit в диалоге криво работает, но думаю до обновления..
     
  9. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Лично мена раздражает большое количество компонент на форме. Черт ногу сломит
    Ну и собственно большое количество кастом-контролов тоже не всегда удобно.
    Если работать с датасоурсом - проблем особых нет, но если работать через getComponent/getElement могут быть проблемы, т.к. на основной странице и кастом-контролах могут существовать компоненты с одинаковым названием
     
  10. lionk

    lionk Well-Known Member

    Регистрация:
    5 апр 2007
    Сообщения:
    308
    Симпатии:
    3
    Алсо у extlib есть атрибут href который должен открывать сетевой ресурс, но он не работает.
    Сделал всё через диалоги библиотки расширений. Не красиво но хоть работает.
     
  11. xvasiliy

    xvasiliy New Member

    Регистрация:
    22 ноя 2013
    Сообщения:
    2
    Симпатии:
    0
    Если я не ошибаюсь, то здесь есть тот самый код, который виджет в dom-дереве перемещает в "нужное" место. И вроде должно заработать.
    http://lotusnotus.com/lotusnotus_en.nsf/dx...-updates....htm
    var dialogWidget = dijit.byId(id);
    if( dialogWidget ) dialogWidget.destroy();
    dialogWidget = new dijit.Dialog( { }, dojo.byId(id));
    var dialog = dojo.byId(id);
    dialog.parentNode.removeChild(dialog);
    var form = document.forms[0]; form.appendChild(dialog);
    dialogWidget.startup();

    Еще я пробовал через iframe (показывал модальное окно, xpages которого находится в другой базе), вроде работает.
     
  12. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Кстати... сделал я динамически подгружаемые диалоги.
    Клиентский-JS работает в рамках диалога. Контекста основной страницы нет.
    Серверный JS работает в полном объеме

    Диалог формируется в кастом контроле и динамически грузится в панель.
    В качестве диалога использую диалоги ExtLib
    Датасоурс передается в диалог через параметы
     
Загрузка...
Похожие Темы - Модальные Диалоги Xpage
  1. NickProstoNick
    Ответов:
    9
    Просмотров:
    2.247
  2. NickProstoNick
    Ответов:
    2
    Просмотров:
    1.322
  3. NickProstoNick
    Ответов:
    1
    Просмотров:
    1.750
  4. pbnoob
    Ответов:
    4
    Просмотров:
    3.462

Поделиться этой страницей