2016-02-15 3 views
0

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

<xp:table id="InfoTable" style="margin-left:100.0px"> 
    <xp:tr> 
     <xp:td> 
      <xp:radioGroup id="radioGroup1" layout="pageDirection"> 
       <xp:selectItem itemLabel="Number"></xp:selectItem> 
       <xp:selectItem itemLabel="Alphabet"></xp:selectItem> 
       <xp:eventHandler event="onclick" submit="true" 
        refreshMode="partial" refreshId="InfoTable"> 
       </xp:eventHandler> 
      </xp:radioGroup> 
     </xp:td> 
     <xp:td> 
      <xp:comboBox id="comboBox1_destRank" 
       dojoType="dijit.form.ComboBox" value="# {sessionScope.NumberValue}" 
       style="width:100.0px"> 
       <xp:this.rendered><![CDATA[#{javascript:var x = getComponent("radioGroup1").getValue(); 

if(x == "Number") 
    { return true; } 
if(x == "Alphabet") 
    { return false; }}]]></xp:this.rendered> 
       <xp:selectItem itemLabel="1"></xp:selectItem> 
       <xp:selectItem itemLabel="2"></xp:selectItem> 
       <xp:selectItem itemLabel="3"></xp:selectItem> 
       <xp:selectItem itemLabel="4"></xp:selectItem> 
       <xp:selectItem itemLabel="5"></xp:selectItem> 
      </xp:comboBox> 
      <xp:br></xp:br> 
      <xp:comboBox id="comboBox2_destPost" 
       dojoType="dijit.form.ComboBox" 
       value="#{sessionScope.AlphabetValue}" style="width:100.0px"> 
       <xp:this.rendered><![CDATA[#{javascript:var x = getComponent("radioGroup1").getValue(); 

if(x == "Alphabet") 
    { return true; } 
if(x == "Number") 
    { return false; }}]]></xp:this.rendered> 
       <xp:selectItem itemLabel="a"></xp:selectItem> 
       <xp:selectItem itemLabel="b"></xp:selectItem> 
       <xp:selectItem itemLabel="c"></xp:selectItem> 
       <xp:selectItem itemLabel="d"></xp:selectItem> 
       <xp:selectItem itemLabel="e"></xp:selectItem> 
      </xp:comboBox> 
     </xp:td> 
    </xp:tr> 

</xp:table> 

Я тестирую код и работает правильно. Как только я нажму на переключатель, появится соответствующее поле со списком.

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

Позже мы используем тот же компьютер и тот же темп, чтобы снова щелкнуть мышью, чтобы отобразить поле со списком, щелкнув переключатель, один раз, но моим коллегам по-прежнему требуется два и три раза, чтобы показать комбинированное поле ,

Я изучаю код, и я не знаю, какая часть вызывает странный результат.

Может кто-нибудь дать совет, пожалуйста. Спасибо.

Ссылки:

ответ

2

Куда они нажимают? И какую версию Domino вы используете? Я считаю, что щелчок на ярлыке не вызывал выбор значения в предыдущих версиях. Он отлично работает для меня с 9.0.1 FP3 в Internet Explorer и Firefox. Возможно, эта проблема относится к Berndt Hort, но ссылка IBM больше не работает, и проблема, похоже, исправлена ​​в более поздних версиях Domino.

+0

В наших предыдущих тестах мы щелкаем переключатель, а не ярлык. – beginner

+0

Мы посетили веб-сайт [Berndt Hort] (http://www.assono.de/blog/d6plinks/XPagesOnClickRadioButtonBug) и применили код к событию onclick и снова проверили. Мы перемещаем точку мыши на переключатель и тот же темп, чтобы щелкнуть мышью. Наконец, нам нужно только щелкнуть один раз, чтобы отобразить поле со списком. Спасибо за помощь. – beginner

0

Что такое браузер, что ваш коллега использует?

Событие onclick для группы радио не работает должным образом в других браузерах. Он отлично работает в IE. Итак, мы сделали небольшую настройку в коде eventHandler. Обратите внимание на следующее событие:

<xp:eventHandler 
    event="onchange" 
    submit="true" 
    refreshMode="partial" 
    refreshId="pnlMainTTSHF" 
    disableValidators="true" 
    id="eventHandler1" 
    rendered="#{javascript:!context.getUserAgent().isIE()}" /> 
<xp:eventHandler 
    event="onclick" 
    submit="true" 
    refreshMode="partial" 
    refreshId="pnlMainTTSHF" 
    disableValidators="true" 
    id="eventHandler2" 
    rendered="#{javascript:context.getUserAgent().isIE()}" /> 
+0

Благодарим вас за ответ. Мы оба используем IE 11, и я думаю об этом: код написан до IE 11, он написан в IE 8. Я не уверен, что это причина, вызывающая странный результат, поскольку версия IE отличается. – beginner

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