Dojo: проверка значений в dijit.form.ComboBox - PullRequest
0 голосов
/ 02 марта 2011

Эй, ребята! У меня есть dijit.form.ComboBox, к которому нужно применить проверку значений. В частности, поле ниже ...

          <input dojoType="dijit.form.ComboBox"
            store="xvarStore"
            value="[% xv %]"
            searchAttr="name"
            name="xvar_names_[% section_count %]_arg_[% loop.count %]"
            id="xvar_names_[% section_count %]_arg_[% loop.count %]"
          />

[% .....%] - это значения из Template Toolkit.

В любом случае, суть ComboBox, конечно, в том, что вы можете выбрать значение или ввести собственное, и эту функциональность я не собираюсь менять. Что мне нужно сделать, так это всплыть или как-то повредить кого-то, если они помещают значение в это, а не в список.

Кто-нибудь знает, как я могу это сделать. Я думал о событии onBlur, но все еще немного озадачен.

Любые указатели в правильном направлении будут оценены. Джени

Ответы [ 2 ]

2 голосов
/ 03 марта 2011

Если вы хотите потребовать, чтобы пользователь ввел значение, которое находится в списке, то вам, вероятно, нужен FilteringSelect, а не ComboBox. FilteringSelect делает именно это.

http://dojotoolkit.org/reference-guide/dijit/form/FilteringSelect.html

Я противопоставил эти два виджета в сообщении в блоге:

http://kennethfranqueiro.com/2010/06/combobox-vs-filteringselect/

1 голос
/ 02 марта 2011

Документация для dijit.form.ComboBox , вероятно, лучшее место для начала, но у вас есть правильная идея. События onChange или onBlur кажутся наиболее подходящими, но вы также можете написать пользовательскую функцию validate, которая будет раздражать пользователя, если значений нет в списке.

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