結果は、テキストコントロールで最初に表示され、Odataからロードされ、入力コントロールに表示される価格、数量が掛けられます。目標は、新しい価格と新しい数量が入力コントロールに入力された後、そのテキストコントロールで結果が自動的に更新されることです。 _onChange()では、ODataのプロパティ(この場合は価格と数量)を変更することができます(私は更新されたプロパティと結果をデバッガモジュールで見てきました)。しかし、更新された結果はText Controlに表示されません。だれかがアイデアを持っていますか?JSおよびXMLを使用してテキストコントロールのOData値を変更
XML:
<t:Column>
<Text text="Price"/>
<t:template>
<Input id="price" value="{Prc}" editable="true" change="_onChange"/>
</t:template>
</t:Column>
<t:Column>
<Text text="Quantity"/>
<t:template>
<Input id="quantity" value="{Qty}" editable="true" change="_onChange"/>
</t:template>
</t:Column>
JS:
_onChange: function(oEvent){
var test = oEvent.getSource();
var path = test.getBindingContext().getPath();
var obj = oModel.getProperty(path);
var stringID=test.sId;
//determine the current control using the predefined ID
switch(oEvent!=null){
case stringID.match("quantity")!=null
//read the Input of quantity in Input control
obj.Qty = test._$input.context.value;
break;
case stringID.match("price")!=null:
//read the input of price in Input control
obj.Prc = test._$input.context.value;
break;
};
var sum = parseInt(obj.Prc) * parseInt(obj.Qty);
obj.Result =sum.toString();
}