在SAPUI5应用程序中,我使用两个XML视图,显示一个Chart,每个都有一个绑定到OData服务的模型。
在第一个视图中,我使用以下代码构建图表:
<ma:Chart id="idChart" height="90%" width="100%" type="Column"
rows="{/MySet}" tap="onTapEvt">
<ma:category>
<ma:Category column="category" displayName="Category" />
</ma:category>
<ma:series>
<ma:Series column="intervallSeries" displayName="Intervall"/>
</ma:series>
<ma:values>
<ma:Value expression="mValue" displayName="Anzahl" />
</ma:values>
<ma:columns>
<ma:Column name="category" value="{Category}" />
<ma:Column name="intervallSeries" value="{Intervall}" />
<ma:Column name="mValue" value="{Anzahl}" type="number" />
</ma:columns>
</ma:Chart>
假设我的示例图表中有四个类别,分别名为“A”,“B”,“C”和“D”。 当我点击图表中的类别“C”时,我想通过过滤“Category eq'C'”,使用我的OData服务中的过滤数据在下一页上显示另一个图表。 因此我使用函数
onTapEvt: function(oEvent) {
var selectedCategory = oEvent.oSource._selectedCatIdx; // 2 when I select 'C'
// --> How do I get Category value 'C' instead of selectedIndex 2 here <--
app.to("nextPage", "slide", selectedCategory);
}
对象oEvent.oSource
包含所有MAKit Chart数据,例如我点击的类别的选定索引。
现在我正在寻找一种方法来从图表中读取带有索引2的Category的绑定值。
有任何想法吗?在SAPUI5 SDK中,我找不到有用的方法。
答案 0 :(得分:0)
您可以使用以下代码获取所选类别:
var myChart = this.getView().byId("idChart");
var cat = myChart.getSelectedCategory();