Sapui5 将InPlaceEdit动态分配给RowRepeater创建的文本字段

Sapui5 将InPlaceEdit动态分配给RowRepeater创建的文本字段,sapui5,Sapui5,如何将控件分配给TextFields,这些字段是通过RowRepeater的数据绑定动态创建的 基本上我有这样的东西: someRowRepeater.bindRows("/path/to/an/array", new sap.ui.commons.TextField({value: "{value}"}); [{text: "some first value"}, {text: "some second value"}, ... ] 该数组如下所示: someRowRepeater.bin

如何将控件分配给TextFields,这些字段是通过RowRepeater的数据绑定动态创建的

基本上我有这样的东西:

someRowRepeater.bindRows("/path/to/an/array", new sap.ui.commons.TextField({value: "{value}"});
[{text: "some first value"}, {text: "some second value"}, ... ]
该数组如下所示:

someRowRepeater.bindRows("/path/to/an/array", new sap.ui.commons.TextField({value: "{value}"});
[{text: "some first value"}, {text: "some second value"}, ... ]
我已经尝试向每个TextField添加一个id,因此我可以在onAfterRendering方法中使用
.byID()
添加InPlaceEdits,方法是将数组修改为
[{text:“一些第一个值”,id:0},…
,将TextField的构造函数修改为
…TextField({text:{value}”,id:{value}+“{id}”)
但是我得到一条错误消息,
“{value}{id}”不是一个有效的id。


有什么建议吗?

下面是一个工作示例:

<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>

        <script src="resources/sap-ui-core.js"
                id="sap-ui-bootstrap"
                data-sap-ui-libs="sap.ui.commons,sap.ui.layout,sap.ui.ux3,sap.ui.table,sap.m"
                data-sap-ui-theme="sap_goldreflection">
        </script>

        <script>
            var data = {rows: [{text: "some first value"}, {text: "some second value"}]};
            var oModel = new sap.ui.model.json.JSONModel(data);

            var oTable = new sap.ui.table.Table({
                title: "Table column and data binding",
                showNoData : true,  
                columnHeaderHeight : 10,
            });
            oTable.setModel(oModel);

            oTable.addColumn(new sap.ui.table.Column({
                label: "My Column",
                template: new sap.ui.commons.InPlaceEdit("IPE1",{
                    content: new sap.ui.commons.TextField({value: "{text}"})
                }),
            }));

            oTable.bindRows("/rows");

            oTable.placeAt("content");
        </script>

    </head>
    <body class="sapUiBody" role="application">
        <div id="content"></div>
    </body>
</html>

var data={rows:[{text:“某个第一个值”},{text:“某个第二个值”}]};
var oModel=new sap.ui.model.json.JSONModel(数据);
var oTable=新sap.ui.table.table({
标题:“表列和数据绑定”,
肖诺达:是的,
圆柱头高度:10,
});
setModel(oModel);
oTable.addColumn(新的sap.ui.table.Column({
标签:“我的专栏”,
模板:new sap.ui.commons.InPlaceEdit(“IPE1”{
内容:新建sap.ui.commons.TextField({value:{text}})
}),
}));
oTable.bindRows(“/rows”);
可旋转。放置在(“内容”);
希望这有帮助

问候