首页 > 解决方案 > 可搜索输入的 SAPUI5 命名模型绑定

问题描述

我目前正在编写一个简单的应用程序,其中包含一个用于在 SAPUI5 中注册的弹出对话框,其中包含片段的 XML 视图。我有两个 JSON 文件,一个用于国家,一个用于城市,并试图将 JSON 绑定到国家的下拉列表和城市的可搜索输入。具有约束力的国家有效,但城市无效。我正在使用命名绑定,但不确定我哪里出错了。

var countryModel= new JSONModel(jQuery.sap.getModulePath("com.bankdetails.BankDetails", "/model/countries.json")); 
countryModel.setSizeLimit(500);
this._oDialog.setModel(countryModel); 

var cityModel= new JSONModel(jQuery.sap.getModulePath("com.bankdetails.BankDetails", "/model/cities.json")); 
cityModel.setSizeLimit(10000000);
this._oDialog.setModel(cityModel, "cities"); 

this.getView().addDependent(this._oDialog);

然后在我的 XML 视图中,我有以下内容:

       <ComboBox 
            items="{
                path: '/countries',
                sorter: { path: 'name' }
            }">
            <core:Item key="{name}" text="{name}" />
        </ComboBox>
        <Label text="City"></Label>
        <Input
            id="cityInput"
            type="Text"
            placeholder="Enter City ..."
            showSuggestion="true"
            suggestionItems="{cities>/cities}" >
            <suggestionItems>
                <core:Item text="{cities>/name}" />
            </suggestionItems>
        </Input>

组合框(不使用命名绑定)有效,但城市可搜索输入无效。任何想法我做错了什么?

标签: javascriptjsonxmldata-bindingsapui5

解决方案


我相信

<core:Item text="{cities>/name}" />

应该

<core:Item text="{cities>name}" />

推荐阅读