我想通过从另一个value
或其他输入区域获取value
来设置文本page
。这是我的文字字段。我为this.byId("thisOne").
尝试了很多组合,但它们没有用。
this.byId("thisOne").setValue("Some thing");
其他方式:
sap.ui.getCore().byId("thisOne")....
文字元素:
<Text text="" id ="thisOne"/>
我们是CML鱼片:
<mvc:View
xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m" controllerName="App.view.Take"
xmlns:l="sap.ui.layout"
xmlns:f="sap.ui.layout.form">
<Page showHeader="false">
<Label text="thisOne" />
<Input text="" id="thisOne" />
<Button type="Accept" text="Accept" ></Button>
<Button type="Reject" text="Reject" ></Button>
</Page>
</mvc:View>
如果为控件明确指定ID,则在XML视图中,实际ID将以XML视图的ID为前缀,例如Input控件可能具有实际ID“__xmlview0--thisOne
”。
最佳实践是使用XML View的byId函数来获取其中包含的控件的ID。因此,例如在附加到视图的控制器(在您的情况下为App.view.Take.controller.js
)中,您可以这样做:
this.getView().byId("thisOne").setValue("Some thing");
请注意,setValue
不起作用。 setValue
不是sap.m.Text
Control支持的方法。 setValue
支持sap.m.Input
(或从sap.m.Inputbase
继承属性的任何其他控件)
var oValue = sap.ui.getCore().byId("inputId").getValue();
然后
sap.ui.getCore().byId("thisOne").setText(oValue);
有关详细信息,请参阅sap.m.Text
和sap.m.Input
。
如果要获取文本字段,然后为其添加值。你必须这样做:
sap.ui.getCore().byId("thisOne").setValue("Some thing");