2016-08-01 77 views
1

我開始使用OPENUI5/SAPUI5,並試圖訪問我實施的控件的數據。例如:如何檢索SAPUI5上的字段值

<Label text="Amount" /> <Input id="inputAmount" value="{Amount}" /> <Text id="lblCurrency" text="USD" >

  1. 如何獲得inputAmount或lblCurrency的編程值?
  2. 最初我使用的是模型服務器,如何以編程方式訪問odata模型?我使用的是:

console.log(this.getView().getModel().getJSON());

我不能得到的結構,但我已經部署在該對象的數據,實際上是顯示在屏幕上。

回答

0

你可以得到控制而通過它的id,然後訪問它的值,所以在您的代碼:

訪問文本控制在控制器

sap.ui.getCore().byId("lblCurrency").getText() 

訪問的輸入值控制控制器

sap.ui.getCore().byId("inputAmount").getValue() 

上面的代碼顯示瞭如何訪問以標準的方式來衡量價值。如果你要使用綁定(綁定是當你有一個模型更新你的視圖,如果它是雙向綁定也視圖更新你的模型),然後爲了獲得價值,你需要訪問模型並從那裏提取結合以及如何使用

例如,它可以在這裏找到:

https://help.sap.com/saphelp_uiaddon10/helpdata/en/91/f0f3cd6f4d1014b6dd926db0e91070/content.htm

更新

爲了從模型得到的數據,你需要使用的getProperty模型下的功能,所以你的代碼應該看起來有些

oModel.getProperty("{PATH_TO_WHERE_THE_PROPERTY_IS_LOCATED",{OPTIONAL_CONTEXT}}; 
+0

沒關係,它的工作原理。但是模型中的一些值不在控件上。有沒有辦法從odata目標模型訪問數據? – Mario

+0

是的。我將更新答案 –

+0

oModel.getProperty()的問題是我無法找到如何將oModel變量分配給Hana Destination oData。我使用目標爲了從控件上的oData加載數據,但我無法直接通過編程方式獲得訪問權限。 – Mario