Javascript SAP UI5-动态属性绑定
我一直在尝试绑定XML文件第19行的属性“value” 第19行:Javascript SAP UI5-动态属性绑定,javascript,sapui5,sap-mii,Javascript,Sapui5,Sap Mii,我一直在尝试绑定XML文件第19行的属性“value” 第19行: 我面临的问题是,根据在ajax GET方法中发送的标记名,从后端发送的数据集中的标记名会发生变化。标记名是从选择控件中提取的。所以它不是常数 如果在select控件中选择了“AssetUtil1”,它将在JS文件第83行的GET函数中发送 第83行:url:'/XMII/Illuminator?QueryTemplate=Parag/TagValues/query/qry_TagData&TagName='+oKey+'&Con
我面临的问题是,根据在ajax GET方法中发送的标记名,从后端发送的数据集中的标记名会发生变化。标记名是从选择控件中提取的。所以它不是常数
如果在select控件中选择了“AssetUtil1”,它将在JS文件第83行的GET函数中发送
第83行:url:'/XMII/Illuminator?QueryTemplate=Parag/TagValues/query/qry_TagData&TagName='+oKey+'&Content Type=text/json',
,则xml第19行的“value”属性必须设置为value=“{AssetUtil1}”
同样,如果在select控件中选择了“AssetUtil2”,则xml第19行的“value”属性必须设置为value=“{AssetUtil2}”
如何动态绑定value属性?
这是XML文件
<mvc:View xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m" xmlns:f="sap.ui.layout.form" xmlns:l="sap.ui.layout" xmlns:viz="sap.viz.ui5.controls" xmlns:viz.data="sap.viz.ui5.data" xmlns:viz.feeds="sap.viz.ui5.controls.common.feeds" controllerName="com.Parag.TagValues.controller.View1" displayBlock="true">
<Shell id="shell">
<App id="app">
<pages>
<Page id="page" title="{i18n>title}">
<content>
<OverflowToolbar>
<ToolbarSpacer width="2%" />
<Select id="idForSelect" width="20%" forceSelection="false" change="onSelect" />
</OverflowToolbar>
<viz:Popover id="idPopOver" />
<viz:VizFrame id="idVizFrame" uiConfig="{applicationSet:'fiori'}" height="100%" width="100%" vizType="bar">
<viz:dataset>
<viz.data:FlattenedDataset data="{/Rowsets/Rowset/0/Row}">
<viz.data:dimensions>
<viz.data:DimensionDefinition name="DateTime" value="{DateTime}" />
</viz.data:dimensions>
<viz.data:measures>
<viz.data:MeasureDefinition id="tagid" name="Tag" value="{TagName}" />
</viz.data:measures>
</viz.data:FlattenedDataset>
</viz:dataset>
<viz:feeds>
<viz.feeds:FeedItem id="valueAxisFeed" uid="valueAxis" type="Measure" values="Tag" />
<viz.feeds:FeedItem uid="categoryAxis" type="Dimension" values="DateTime" />
</viz:feeds>
</viz:VizFrame>
</content>
</Page>
</pages>
</App>
</Shell>
</mvc:View>
在选择控件中选择AssetUtil1时从后端发送的数据
[
{
"DateTime": "05/06/2021 18:33:29",
"AssetUtil1": 92.78
},
{
"DateTime": "05/06/2021 18:34:29",
"AssetUtil1": 90.96
},
{
"DateTime": "05/06/2021 18:35:29",
"AssetUtil1": 93.33
},
{
"DateTime": "05/06/2021 18:36:29",
"AssetUtil1": 92.44
},
{
"DateTime": "05/06/2021 18:37:29",
"AssetUtil1": 93.18
}
]
[
{
"DateTime": "05/06/2021 18:36:08",
"AssetUtil2": 88.73
},
{
"DateTime": "05/06/2021 18:37:08",
"AssetUtil2": 90.9
},
{
"DateTime": "05/06/2021 18:38:08",
"AssetUtil2": 91.31
},
{
"DateTime": "05/06/2021 18:39:08",
"AssetUtil2": 90.63
},
{
"DateTime": "05/06/2021 18:40:08",
"AssetUtil2": 88.6
}
]
在选择控件中选择AssetTil2时从后端发送的数据
[
{
"DateTime": "05/06/2021 18:33:29",
"AssetUtil1": 92.78
},
{
"DateTime": "05/06/2021 18:34:29",
"AssetUtil1": 90.96
},
{
"DateTime": "05/06/2021 18:35:29",
"AssetUtil1": 93.33
},
{
"DateTime": "05/06/2021 18:36:29",
"AssetUtil1": 92.44
},
{
"DateTime": "05/06/2021 18:37:29",
"AssetUtil1": 93.18
}
]
[
{
"DateTime": "05/06/2021 18:36:08",
"AssetUtil2": 88.73
},
{
"DateTime": "05/06/2021 18:37:08",
"AssetUtil2": 90.9
},
{
"DateTime": "05/06/2021 18:38:08",
"AssetUtil2": 91.31
},
{
"DateTime": "05/06/2021 18:39:08",
"AssetUtil2": 90.63
},
{
"DateTime": "05/06/2021 18:40:08",
"AssetUtil2": 88.6
}
]
使用select控件的onChange事件并在contoller中绑定值,抱歉,您已经在这么做了。但是bindProperty(或bindValue缩写)需要的是对象,而不是字符串。试试``oTag.bindValue({path:oKey})```非常感谢。它起作用了。。。我使用了
oTag.bindProperty(“value”,{path:oKey})代码>