具有自定义建议的多输入

问题描述 投票:0回答:1

我正在寻找在格式表格中显示建议(三个字段userID firstname lastname)。我发现this example,但是当我尝试使用多输入时它是简单的输入我得到了这个错误:

错误:无法从resources / null / suggestionColumns.js加载'null / suggestionColumns.js':404 - Not Found“

sapui5
1个回答
0
投票

sap.m.MultiInput类是常规sap.m.Input类的子类。除非SDK中另有规定,否则适用于常规输入的所有机制也应适用于多输入。

查看您获得的错误消息,我想您没有为suggestionColumns聚合标记指定正确的XML命名空间。您应该使用sap.m库的名称空间(即与MultiInput XML标记完全相同的名称空间)。

你可以找到sap.m.Input in the SDK的工作样本。可以使用以下定义纯粹在XML视图中创建简约示例:

<mvc:View xmlns="sap.m" xmlns:mvc="sap.ui.core.mvc">
    <MultiInput showSuggestion="true" >
        <suggestionColumns>
            <Column>
                <Label text="First Name"/>
            </Column>
            <Column>
                <Label text="Last Name"/>
            </Column>
        </suggestionColumns>
        <suggestionRows>
            <ColumnListItem>
                <Label text="John"/>
                <Label text="Doe"/>
            </ColumnListItem>
            <ColumnListItem>
                <Label text="Jack"/>
                <Label text="White"/>
            </ColumnListItem>
            <ColumnListItem>
                <Label text="Some"/>
                <Label text="Guy"/>
            </ColumnListItem>
        </suggestionRows>
    </MultiInput>
</mvc:View>

默认情况下,当用户按下建议行时,没有任何反应。要将行为附加到此选择事件,可以使用suggestionItemSelected事件(继承自sap.m.Input控件)。

上述示例的此事件的回调可能如下所示:

onSelection: function(oEvent) {
   var aCells = oEvent.getParameter("selectedRow").getCells();
   oEvent.getSource().addToken(new sap.m.Token({
     key: aCells[1].getText(),
     text: aCells[0].getText()
   }));
}

我已经对这些样本做了一个小小的提示,你可以在这里访问它:https://jsfiddle.net/a0bk8kub/11/

© www.soinside.com 2019 - 2024. All rights reserved.