OnComplete для кнопки, содержащейся в мобильных элементах управления XPages extlib, не запускается на мобильных устройствах, но отлично работает в настольном браузере - PullRequest
0 голосов
/ 21 декабря 2018

OnComplete для кнопки, содержащейся в мобильных элементах управления XPages extlib, не запускается на мобильных устройствах, но отлично работает в любом настольном браузере.Я тестировал как на iPhone, так и на Android телефонах.Вот источник моего баттона buttonClear, который очищает поля поиска (привязанные к свойствам области) и затем «щелкает» кнопку buttonFilterSearch в ее onComplete.

                    <xp:button id="buttonClear" value="Clear/Reset"
                        styleClass="buttonMarginBottom" style="width:200.0px;height:30.0px" icon="/undo-4-24.png">
                        <xp:eventHandler event="onclick" submit="true" refreshMode="partial" id="eventHandler1"
                            refreshId="panelOppSearch">
                            <xp:this.action><![CDATA[#{javascript:
                            sessionScope.query2 = "" ;
                            sessionScope.query2Location = "" ;
                            sessionScope.query2Activity = "" ;
                            sessionScope.query2FromDate = "";
                            sessionScope.query2ToDate = "";
                            sessionScope.query2searchbox = "" ;
                            sessionScope.query2AssignmentStatus = "Needed";
                            }]]></xp:this.action>
                            <xp:this.onComplete><![CDATA[dojo.byId("#{id:buttonFilterSearch}").click();]]></xp:this.onComplete>
                        </xp:eventHandler>
                    </xp:button>
                </xp:td>
            </xp:tr>
        </xp:table>
    </xe:djxmRoundRectList>
... more ...
... more ...
</xe:appPage>

Содержится полная мобильная страница xe: appPageв пользовательском элементе управления, который является одной из многих мобильных страниц (все через CC), содержащихся в xe: singlePageApp на моем mobileXPage.

Любые идеи приветствуются.

1 Ответ

0 голосов
/ 22 декабря 2018

onComplete должен запускаться на стороне клиента.

Это шаги, которые я бы предпринял

1) Включен ли JavaScript в мобильном браузере?2) Проверьте с другим O / S, получив другой телефон.3) Установите Opera, Firefox, Chrome и протестируйте их.4) Замените .click () на предупреждение («оно срабатывает»).5) Не запускается ли Javascript в клиенте?6) Если Alert () срабатывает, убедитесь, что элемент может быть найден с помощью Id, поставьте еще одно предупреждение после того, как вы получите дескриптор элемента ...7) К элементу прикреплено событие click?В зависимости от браузера мобильное приложение использует8) Можете ли вы нажать кнопку, чтобы нажать ее вручную?http://perfectionkills.com/detecting-event-support-without-browser-sniffing/

...