Контрол toggle switch

Тема в разделе "Lotus - Xpages", создана пользователем MaxP, 18 окт 2015.

  1. MaxP

    MaxP Active Member

    Регистрация:
    2 дек 2014
    Сообщения:
    35
    Симпатии:
    3
    Приветствую. Кто-нибудь успешно использует toggle switch?
     
  2. NickProstoNick

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

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Интересно, на что надеется автор?
     
  3. MaxP

    MaxP Active Member

    Регистрация:
    2 дек 2014
    Сообщения:
    35
    Симпатии:
    3
    Надеюсь, что кто-то использует и откликнется. Есть пара вопросов.
     
  4. NickProstoNick

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

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Я бы все таки рекомендовал описывать проблему, а не отделываться общими фразами. Иначе помощи не дождешься
     
  5. MaxP

    MaxP Active Member

    Регистрация:
    2 дек 2014
    Сообщения:
    35
    Симпатии:
    3
    Ок. Насколько я понял, у элемента есть два состояния: on и off. На каждое состояние, можно сделать Label.
    Чтобы привязать контрол к значению поля, нужно в value прописать условие, если поле = "1", то "on", ="", то "off".
    Это как пример. При загрузке CC в моб.приложении, можно посмотреть значение контрола вот так
    getComponent("djxmSwitch1").getValue();
    Однако, при изменении значения контрола на противоположное - нажатием, программно я получаю значение которое было при инициализации.
    Попытки работать с onStateChanged не приносят также успеха. Пробую получить состояние контрола, и другие действия в скрипте, а контрол при нажатии перемещается обратно.
    Документации по полю не нашел. Отсюда вопросы:
    1) Правильно ли связываю значения поля дока и контрол?
    2) Правильно ли я получаю, или хочу получить значение переключателя для дальнейшей обработки?
    3) Нужно ли работать с onStateChanged? И если да, то как?
     
  6. NickProstoNick

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

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Если чего-то не понимаешь - не значит, что это что-то не работает.
    Код (HTML5):
    <?xml version="1.0" encoding="UTF-8"?>
    <xp:view xmlns:xp="http://www.ibm.com/xsp/core"
    xmlns:xe="http://www.ibm.com/xsp/coreex"
    xmlns:xc="http://www.ibm.com/xsp/custom"
    pageTitle="Mobile Application">
     
    <xp:this.beforePageLoad><![CDATA[#{javascript:viewScope.put( "test", "on")}]]></xp:this.beforePageLoad>
    <xe:singlePageApp id="singlePageApp1" selectedPageName="home">
     
    <xe:appPage resetContent="false" id="home" pageName="home">
    <xe:djxmHeading id="djxmHeading0"
    label="Mobile Controls Demo">
     
    </xe:djxmHeading>
     
    </xe:appPage>
     
    <xp:text escape="true" id="computedField1" value="#{viewScope.test}"> </xp:text>
     
    <xp:br></xp:br>
     
    <xe:djxmSwitch leftLabel="ON" rightLabel="OFF" id="djxmSwitch1" value="#{javascript:viewScope.test}">
    <xp:eventHandler event="onStateChanged" submit="true" refreshMode="partial" refreshId="computedField1">
    <xe:this.action>
    <![CDATA[#{javascript:var v1 = viewScope.test
    if( v1 !== "off"){
    viewScope.put( "test", "off")
    }else{ viewScope.put( "test", "on")}}]]>
    </xe:this.action>
    </xp:eventHandler>
    </xe:djxmSwitch>
     
    </xe:singlePageApp>
    </xp:view>
     
     
    3 пользователям это понравилось.
  7. MaxP

    MaxP Active Member

    Регистрация:
    2 дек 2014
    Сообщения:
    35
    Симпатии:
    3
    Согласен. Пока на "вы" с xpage.
    Благодарю за пример!
     
  8. NickProstoNick

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

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Не за что.
    Так что впредь описывай проблему сразу
     
Загрузка...

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