我正在寻找在格式表格中显示建议(三个字段userID firstname lastname)。我找到了this example,但它是简单的输入 当我尝试多输入时,我收到了这个错误:
错误:无法加载' null / suggestionColumns.js' from resources / null / suggestionColumns.js:404 - Not Found"
答案 0 :(得分: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/。