Dojo dijit / form /选择不显示标签

时间:2014-07-05 19:07:05

标签: javascript dijit.form dojo

编辑:谢谢你的回答。但我发现了问题,响应值server.id未设置。现在一切正常:)。

我的dijit / form / Select有问题。我在JavaScript代码中创建了一个Select小部件,通过添加像mySelect.options=[{label:"test", value:1}]这样的选项,小部件向我显示标签。但是当我在dojo / request函数中设置选项时,它不起作用!通过单击下拉菜单,我可以看到标签,但不能看到当前显示字段。

这是我的代码

function populateValuesForDeleteServer() {
request.get("jsp/loadServer.jsp", {
    query : "command=loadAllServer",
    handleAs : "json"
}).then(function(response) {
    // Array für die Liste anlegen
    var parameter = new Array(response.length);
    // Fülle die Parameter
    for (var i = 0; i < response.length; i++) {
        var server = response[i];
        parameter[i] = {
            label : server.name,
            value : server.id
        };
    }
    selectDeleteServer.options = parameter;
}, function(error) {
    // TODO was mit dem log anfangen
    alert("Fehler beim initialisieren der Auswahlliste für deleteServer");
    console.log("An error occurred: " + error);
});

}

2 个答案:

答案 0 :(得分:0)

dojo/store添加到FilteringSelect并添加options以存储为数据。

var store = new Observable(new Memory({
    data: options
}))

widget.set('store',store)

您的代码应为

function populateValuesForDeleteServer() {
request.get("jsp/loadServer.jsp", {
    query : "command=loadAllServer",
    handleAs : "json"
}).then(function(response) {
    // Array für die Liste anlegen
    var parameter = new Array(response.length);
    // Fülle die Parameter
    for (var i = 0; i < response.length; i++) {
        var server = response[i];
        parameter[i] = {
            label : server.name,
            value : server.id
        };
    }

    //dojo/store with an obsrevable
    var store = new Observable(new Memory({
        data: options
    }))

    selectDeleteServer.set('store',store);
}, function(error) {
    // TODO was mit dem log anfangen
    alert("Fehler beim initialisieren der Auswahlliste für deleteServer");
    console.log("An error occurred: " + error);
});

答案 1 :(得分:0)

您是否尝试过addOption()方法。

dijit.form.select.addOption(/*array of options*/).

您的代码应该是这样的。

selectDeleteServer.addOption= parameter;