как убрать все опции из диджита / формы / выбора? - PullRequest
0 голосов
/ 14 ноября 2018

Я использую очень простой dijit / form / select на моей веб-странице Я добавляю несколько опций по коду:

option1 = { value: "o1", label: "option 1", selected: false };
option2 = { value: "o2", label: "option 2", selected: true };

this.mySelect.addOption([option1, option2]);   

Это работает. Однако, когда я пытаюсь очистить мой dijit / form / select, используя этот код:

this.mySelect.removeOption(this.mySelect.getOption());

Все мои опции пропали, кроме выбранного.

Я пытаюсь использовать .reset или даже .value = '', но ничего не получается.

Итак, как удалить все опции из dijit / form / select?

1 Ответ

0 голосов
/ 14 ноября 2018

На самом деле ответ довольно прост, но не достаточно хорошо документирован. (it's pretty hard to find, like all dojo related stuff)

this.mySelect.removeOption(lang.clone(option1));
this.mySelect.removeOption(lang.clone(option2));

this.mySelect.store = null;
this.mySelect.set('value', '');
this.mySelect._setDisplay(""); //This line alone should do the trick

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

Демонстрация: Демонстрация JSFiddle

...