#dom #gwt #listbox
#dom #gwt #listbox
Вопрос:
Как я могу отключить первый элемент в listbox? Ниже приведен мой код:
ListBox list = new ListBox();
list.addItem("Select an item");
list.addItem("a");
list.addItem("b");
list.addItem("c");
Как мне отключить первый элемент в списке?
Большое спасибо
Ответ №1:
Для всех, кто находит эту страницу и хочет отключить опцию GWT ListBox, которая НЕ является первой опцией в ListBox, это сработало для меня:
list.getElement().getElementsByTagName("option").getItem(itemNumber).setAttribute("disabled", "disabled");
Где ItemNumber — это параметр, который вы хотели бы отключить.
Ответ №2:
Вы могли бы выбрать первый дочерний элемент и установить атрибут disabled:
list.getElement().getFirstChildElement().setAttribute("disabled", "disabled");
Комментарии:
1. Вместо того, чтобы выполнять манипуляции с DOM, выполните: list.getElement(). <SelectElement>приведение().GetOptions().GetItem(0).setDisabled(истина);
Ответ №3:
list.getElement().<SelectElement>cast().getOptions().getItem(0).setDisabled(true);
Ответ №4:
В шести строках:
private void disableOption(ListBox listBox, int optionNumber, boolean disable){
if(optionNumber<=listBox.getElement().getChildCount()){
Element element = listBox.getElement().getFirstChildElement();
while (--optionNumber > 0){
element = element.getNextSiblingElement();
}
element.setAttribute("disabled", disable ? "true" : "false");
}
}
Комментарии:
1. Там не должно быть (optionNumber— > 0) вместо (—optionNumber > 0)?