SAPUI5表“已启用多重选择的表”的“获取点击的行”数据

时间:2018-08-13 06:48:23

标签: sapui5

我的sapui5表具有选择模式 Multi Select 。 我可以通过页面中的Button单击事件获取选定的行数据。

我还需要单击一行并获取所单击行的数据。 为此,我使用了ItemPress事件。

但是我无法获得ItemPress事件内部的点击行数据

这就是我附着evet的方式

oView.byId("table1").getTable().attachItemPress(this.handleItemPress, this);

    <Table id="table1" growing="true" growingThreshold="10" mode="MultiSelect">
                            <columns>
                                <Column id="TICKET_ID" hAlign="Begin" vAlign="Top" styleClass="iconCol">
                                    <customData>
                                        <core:CustomData key="p13nData" value='\{"columnKey": "TICKET_ID", "columnIndex":"0", "leadingProperty": "TICKET_ID"}'/>
                                    </customData>
                                    <Text text="{@i18n&gt;Ticket}"/>
                                </Column>
                                <Column id="NUMBER" hAlign="Begin">
                                    <customData>
                                        <core:CustomData key="p13nData" value='\{"columnKey": "NUMBER", "maxLength": "40","columnIndex":"1", "leadingProperty": "NUMBER"}'/>
                                    </customData>
                                    <Text text="{@i18n&gt;NUMBER}"/>
                                </Column>

    </columns>
    <items>
                                <ColumnListItem type="Active">

                                    <cells>
                                        <Text text="{TICKET_ID}"/>
                                        <Text text="{NUMBER}"/>
</cells>
</ColumnListItem>
</Table>

项目新闻发布会

handleItemPress: function(oEvent) {
        var rowobject = oEvent.getSource().getSelectedItem().getBindingContext().getObject();
    }, 

这给出了错误

2 个答案:

答案 0 :(得分:1)

我想我找到了一种访问数据的方法

oEvent.getParameter("listItem").getBindingContext().getObject();

答案 1 :(得分:-1)

如果它是一个多选启用表,则应该有一个确定按钮。用户将选择项目,然后按确定。然后,您可以收集与以下内容类似的所选项目:

onOKPressed: function(oControlEvent) {
            this.aTokens = oControlEvent.getParameter("tokens");
            this.theTokenInput.setTokens(this.aTokens);

            ...
        },