dijit.form.select закроет диалоговое окно всплывающей подсказки в IE - PullRequest
0 голосов
/ 29 января 2010

Я столкнулся со странным поведением при использовании dijit.form.select внутри всплывающей подсказки. Вот сокращенная часть моего кода:

<div id="toolbar" dojoType="dijit.Toolbar">
  <div dojoType="dijit.form.DropDownButton">
    <div dojoType="dijit.TooltipDialog" id="tooltip">
      <input dojoType=dijit.form.TextBox type="text" id="textbox">
      <select id="select" dojoType="dijit.form.Select">
        <option value="1">1</option>
        <option value="2">2</option>
      </select>
      <button dojoType="dijit.form.Button" type="submit" id="button">click</button>
    </div>
  </div>
</div>

Всякий раз, когда я открываю панель инструментов и отображается форма, диалоговое окно всплывающей подсказки закрывается, как только я выбираю вариант из выбора только в IE! FF в порядке ...

Мой обходной путь на данный момент заключается в использовании обычного выбора (я просто опускаю 'dojoType = "dijit.form.Select"'), но по причинам макета я хотел бы иметь dijit.form.select.

Любая подсказка приветствуется.

Привет, Select0r

1 Ответ

0 голосов
/ 16 февраля 2010
  1. Использование обычного «выбора» не вариант, так как мне нужно динамически изменять параметры, что на самом деле является проблемой при обычном выборе. Я также хотел бы, чтобы все выбранные элементы на странице выглядели одинаково.
  2. dijit.FilteringSelect не будет отображать ту же ошибку, но требует другой обработки динамического изменения параметров. Мне также не нравится, что выпадающий список является полем ввода.

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

<div dojoType="dijit.form.DropDownButton" id="DropDownButton">
  <div dojoType="dijit.TooltipDialog" id="tooltip">
    <input dojoType=dijit.form.TextBox type="text" id="textbox">
    <select id="select" dojoType="dijit.form.Select" onChange="dijit.byId("DropDownButton").openDropDown();">
      <option value="1">1</option>
      <option value="2">2</option>
    </select>
    <button dojoType="dijit.form.Button" type="submit" id="button">click</button>
  </div>
</div>
  1. dijit.Toolbar был удален, так как он был бесполезен.
  2. Select теперь вызывает метод DropDownButton "openDropDown" onChange, снова показывая TooltipDialog.

Теперь я могу использовать TooltipDialog в IE - но все еще остается одна проблема: TooltipDialog остается скрытым в IE, пока я не перемещаю мышь на пиксель. Но, по крайней мере, мне не нужно снова нажимать кнопку, чтобы открыть диалоговое окно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...