下拉列表不显示值

时间:2014-10-14 08:47:15

标签: sap sapui5

我有以下代码,问题是第三列是孩子们没有在下拉列表/框中显示数据,我在这里缺少什么? 我尝试使用字段路径,例如add" \ kName"但它不起作用

下拉列表应显示aaa和bbb ......

var myData = {
        'Persons': [
            {
                'name': "Silke",
                'Age': "30",
                'kids': [
                    {
                        'kName': "aaa"

                 },

                    {
                        'kName': "bbb"
                 }


             ]

    }
    ]

    };

    var oModel = new sap.ui.model.json.JSONModel();

    oModel.setData(myData);

    sap.ui.getCore().setModel(oModel);

    var myTable = new sap.ui.table.Table();

    myTable.addColumn(

        new sap.ui.table.ColumnHeader({
            label: new sap.ui.commons.Label("label1", {
                text: "First name"
            }),
            template: new sap.ui.commons.TextField({
                value: "{name}"
            })

        })

    );

    myTable.addColumn(
        new sap.ui.table.ColumnHeader({
            label: new sap.ui.commons.Label("label2", {
                text: "Age"
            }),
            template: new sap.ui.commons.TextField({
                value: "{Age}"
            })

        })

    );


    var ddb = new sap.ui.commons.DropdownBox({

        bindProperty: "/kName"
    });

    ddb.setModel(oModel);

    myTable.addColumn(

        new sap.ui.table.ColumnHeader({

            label: new sap.ui.commons.Label("label3", {
                text: "Kids"
            }),
            template:ddb

        })
    );



    myTable.bindRows("/Persons");

    myTable.placeAt("content");

1 个答案:

答案 0 :(得分:1)

DropdownBox模板应定义如下:

var ddb = new sap.ui.commons.DropdownBox({
    items: {
    path: "kids",
    template: new sap.ui.core.ListItem({
        text: "{kName}",
        key: "{kName}"
       })
    }
});