如何在SAPUI5中动态设置文本值?

问题描述 投票:-1回答:3

我想通过从另一个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>
sapui5
3个回答
6
投票

如果为控件明确指定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");


-1
投票

请注意,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.Textsap.m.Input


-3
投票

如果要获取文本字段,然后为其添加值。你必须这样做:

sap.ui.getCore().byId("thisOne").setValue("Some thing");
© www.soinside.com 2019 - 2024. All rights reserved.