3

dijit.form.Select我使用填充 2 个 ArrayLists创建了 2 个 Dojo 下拉列表。当用户从第一个下拉列表中选择一个选项时,我希望在第二个下拉列表中禁用一个选项。我似乎无法弄清楚如何做到这一点。是否可以以编程方式从下拉列表中禁用单个选项?就像是...

if(this.dropDown1.get("value") == "FirstOption") {
    //this.dropDown2.get("value", "AnotherOption").set("disabled", true); ??
}
4

1 回答 1

2

尝试从 dropDown2 中检索您想要的值,并直接将其 disabled 属性设置为 true(没有设置器,它只是一个普通的 javascript 对象)。然后调用 dropDown2.startup() 在 UI 上进行更改。例子 :

require(["dojo/_base/array"], 
function(array) { 

    var self = this,

    opt = array.filter(
                  self.dropDown2.options, 
                  "return item.value == '" + self.dropDown2.get("value") + "'"
              ).pop(); 

    opt.disabled = true;

    this.startup();

});
于 2013-07-30T18:09:02.200 回答