GWT ListBox - 如何禁用列表框项目?

10

如何禁用列表框中的第一项?以下是我的代码:

ListBox list  = new ListBox();
list.addItem("Select an item");
list.addItem("a");
list.addItem("b");
list.addItem("c");

如何禁用列表中的第一项? 非常感谢。
4个回答

16

如果有人在查找如何禁用一个GWT ListBox中不是第一个选项的选项,这对我有效:

list.getElement().getElementsByTagName("option").getItem(itemNumber).setAttribute("disabled", "disabled");

itemNumber是您想要禁用的选项。


8
您可以选择第一个子元素并设置禁用属性:
list.getElement().getFirstChildElement().setAttribute("disabled", "disabled");

3
不要进行DOM操作,使用以下代码: list.getElement().<SelectElement>cast().getOptions().getItem(0).setDisabled(true); - Dominator008

5
list.getElement().<SelectElement>cast().getOptions().getItem(0).setDisabled(true‌​);

3

在六行中:

 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");
      }
 }

应该使用 (optionNumber-- > 0) 而不是 (--optionNumber > 0) 吗? - Helbreder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接