我想读取下面控制器中片段输入字段中输入的值是我的片段和控制器方法。
<core:FragmentDefinition xmlns:core="sap.ui.core"
xmlns:form="sap.ui.layout.form"
xmlns:l="sap.ui.layout"
xmlns="sap.m" >
<Dialog
id="idSettings"
draggable="true"
title="{i18n>Settings_Title}" >
<content>
<form:SimpleForm
id="idSettings_Form"
backgroundDesign="Transparent"
editable="true" >
<form:content>
<Label text="{i18n>Settings_DeliveryStatus}" />
<Input
id="idSettings_storeId" />
</form:content>
</form:SimpleForm>
</content>
<buttons>
<Button
text="SAVE"
press="onSettingsSaveBtn" />
<Button
text="CANCEL"
press="onSettingsCancelBtn" />
</buttons>
</Dialog>
我尝试过以下选项,但没有工作。
1)********************************************* ********
var fragmentId = this.getView().createId("webapp.ZSO_ES4.viewFragments.Settings");
var tab = sap.ui.core.Fragment.byId(fragmentId, "idSettings_storeId");
2)********************************************* ********
var user = sap.ui.core.Fragment.byId("webapp.ZSO_ES4.viewFragments.Settings", "idSettings_storeId").getValue();
答案 0 :(得分:0)
您的输入应具有绑定到JSON模型的值属性
<Input value="{json>name}"/>
然后在您的控制器中,您需要实例化此JSON模型
sap.ui.define([
"sap/ui/model/json/JSONModel",
], function(JSONModel) {
return sap.ui.controller("INSERT CONTROLLER NAME HERE", {
onInit: function() {
var oJSONModel = new JSONModel({
name: ""
});
this.getView().setModel(oJSONModel, "json");
},
设置完成后,您可以使用
访问该值this.getView().getModel("json").getProperty("/name");
这被称为MVC ...我建议阅读它。