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

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

最佳答案

尝试从dropDown2检索所需的值,然后直接将其disable属性设置为true(没有 setter ,它只是一个普通的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();

});

10-08 17:50