如何将json数据绑定到form.Below是我的表单和要绑定的数据.请帮我解决一下这个.示例我想将111个对象值绑定到表单
Data:
{"customerdetailsjson": {
"111": [
{
"name": "Bhuvaneswari Krishnan",
"phone-number":"8050231233"
}
],
"112": [
{
"name":"Chetan Sandeep Renu",
"phone-number":"9840321321"
}
]
}}
Form:
var oLayout1 = new sap.ui.layout.form.ResponsiveGridLayout();
customerDetailsForm = new sap.ui.layout.form.Form("F1", {
layout: oLayout1,
formContainers: [new sap.ui.layout.form.FormContainer("F1C2", {
title: new sap.ui.core.Title({
text: "Address Information",
tooltip: "Address data"
}),
formElements: [new sap.ui.layout.form.FormElement({
label: "Street / Number",
fields: [new sap.m.Input({
type: sap.m.InputType.Text,
value: "{name}",
layoutData: new sap.ui.core.VariantLayoutData({
multipleLayoutData: [new sap.ui.layout.ResponsiveFlowLayoutData({
weight: 5
}), new sap.ui.layout.form.GridElementData({
hCells: "5"
})]
})
})] …Run Code Online (Sandbox Code Playgroud) 我试图在表和图表上一起显示结果det数据.例如:用户提供一个值作为输入,并且必须对服务器进行查询以根据用户输入过滤表,并为nbacj提供结果集.
我正在表上实现一个过滤器,然后将过滤后的结果集绑定到表.我写下面的代码工作正常.
var oModel = new sap.ui.model.odata.ODataModel( "../TEST_ODATA.xsodata",false);
oTable.setModel(oModel);
var oFilter=new sap.ui.model.Filter("SUPPLIERID",sap.ui.model.FilterOperator.EQ,oInput1.getValue());
oTable.getBinding("rows").filter(oFilter);
var NumberOfRows = oTable.getBinding("rows").iLength;
oTable.setTitle("Title1" + "(" + NumberOfRows + ")");
oTable.placeAt("content");
Run Code Online (Sandbox Code Playgroud)
现在我需要将ofilter绑定到图表上,然后编写以下代码,这些代码不起作用.
var oDataset = new sap.viz.ui5.data.FlattenedDataset({
dimensions : [{axis : 1, name : 'SUPPLIERID', value : "{SUPPLIERID}"},{axis : 2, name : 'MATERIALNUMBER', value : "{MATERIALNUMBER}"}],
measures : [{name : 'Result', value : '{Result}'}],
data : {
path : "/service_path"
}});
var oStackChart = new sap.viz.ui5.StackedColumn({
width : "80%",
height : "400px",
plotArea : {'colorPalette' : …Run Code Online (Sandbox Code Playgroud) 我有一个视图页面:
sap.ui.jsview("mvc.oPage1", {
getControllerName : function() {
return "mvc.oPage1";
},
createContent : function(oController) {
var oPage1 = new sap.m.Page({
title : "something",
enableScrolling : true,
footer : new sap.m.Bar({
id : 'page1_footer',
contentMiddle : [ new sap.m.Button({
})]
})
});
oTable = new sap.m.Table({
id: "first_table",
inset : true,
visible : true,
getIncludeItemInSelection : true,
showNoData : false,
columns : [ new sap.m.Column({
styleClass : "name",
hAlign : "Left",
header : new sap.m.Label({
})
}) ]
});
var template = …Run Code Online (Sandbox Code Playgroud) 我想在单击按钮时隐藏按钮/区域/区域(页眉,页脚等).我怎样才能做到这一点?例如,如果我有以下页面:
<mvc:View
height="100%"
xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m">
<Page
title="Hide Area On Button Click" >
<content>
<Button id="btn1" text="Accept" type="Accept" press="onPress" />
<Button id="btn2" text="Reject" type="Reject" />
</content>
<footer>
</footer>
</Page>
</mvc:View>
Run Code Online (Sandbox Code Playgroud)
现在应该是什么
onPress : function {//code}
Run Code Online (Sandbox Code Playgroud)
隐藏拒绝按钮?
我是SAPUI5的新手.
我有两个组件/文件夹,其中包含名为"view"和"tableview"的视图和控制器.是否可以在'tableview'中获取'view'上下文?
我有一个按钮,我想在press-method上将数据发布到我的SAP后端:
oCellBtnOtherchart.addContent(new sap.ui.commons.Button({
text : "Save",
press : function() {
var sServiceUrl = "/MyEntitSet('0001')";
var oModel = sap.ui.getCore().getModel();
console.log(oModel);
var oParameters = {
"email" : "a",
"lastname" : "b",
"firstname" : "c",
};
oModel.create(sServiceUrl, oParameters);
}
}));
Run Code Online (Sandbox Code Playgroud)
我的问题是:
但为什么它是405,我的服务网址错了?如何将数据正确发布到SAP后端?
SAP故障排除指南说:405方法不允许o Request-URI标识的资源不允许使用Request-Line中指定的方法.响应必须包含Allow标头,其中包含所请求资源的有效方法列表. - >这对我现在没有帮助,有谁知道如何包含一个允许标题?
我正在使用SAPUI5制作应用程序,但是模型更新没有及时反映在视图中而引起问题。
一个稍微简化的场景:我创建了一个文本字段,该文本字段从模型中获取文本:
currentText = new sap.m.Text({
width: '100%',
text: '{/currentTrip/perHour}'
});
Run Code Online (Sandbox Code Playgroud)
然后创建一个选择并附加一个更改处理程序:
sourceSelect.attachChange(oController.changeTripSource);
Run Code Online (Sandbox Code Playgroud)
在该控制器函数内部,我正在更新视图模型:
var model = this.getView().getModel().getData();
model.currentTrip.perHour = 5;
Run Code Online (Sandbox Code Playgroud)
我使用此更改事件产生的该编号所做的所有工作(例如更新直接使用此编号的连接图)。但是,在我执行其他操作(如按下按钮或其他操作)之前,视图本身将不会反映对模型的更改。我不明白为什么会这样,或者是什么触发了UI5来检查对模型的更改值并更新视图。有人对此有解决办法吗?
我正在玩OData服务,我很困惑何时使用它
var oModel = new sap.ui.model.odata.ODataModel("proxy/http/services.odata.org/V3/(S(k42qhed3hw4zgjxfnhivnmes))/OData/OData.svc");
this.getView().setModel(oModel);
Run Code Online (Sandbox Code Playgroud)
VS
var oModel = new sap.ui.model.odata.ODataModel("odatserviceurl", true);
var productsModel = new JSONModel();
oModel.read("/Products",
null,
null,
false,
function _OnSuccess(oData, response) {
var data = { "ProductCollection" : oData.results };
productsModel.setData(data);
},
function _OnError(error) {
console.log(error);
}
);
this.getView().setModel(productsModel);
Run Code Online (Sandbox Code Playgroud)
我有两个使用这两种方法的工作示例,但我无法弄清楚为什么使用read方法,如果我可以实现与第一个版本相同.请向我解释或指导可以解决我的困惑的文件.
我想使用图标并根据模型更改颜色.
var wirelessHeadItem = new sap.ui.unified.ShellHeadItem({
icon: "sap-icon://upload-to-cloud"
});
Run Code Online (Sandbox Code Playgroud)
如何将图标的颜色定义为以下内容:
style: "color:{/oSettingsModel/isOnline}"
Run Code Online (Sandbox Code Playgroud)
这样,当我在oSettingsModel中更改isOnline时,图标的颜色会发生变化.
我正在创建一个小的演示页面,显示UI5的一些直接功能.该页面包含两个主要页面:
Carrid).该表如下所示:
<Table id="detailTable" inset="false" class="sapUiResponsiveMargin">
<columns>
<Column>
<Text text="ID" />
</Column>
<Column>
<Text text="Flightnumber" />
</Column>
<Column>
<Text text="Starts in" />
</Column>
<Column>
<Text text="Departs at" />
</Column>
<Column>
<Text text="Lands in" />
</Column>
<Column>
<Text text="Lands at" />
</Column>
</columns>
</Table>
Run Code Online (Sandbox Code Playgroud)
使用以下代码将数据绑定到列:
// Get routing data and show only entrys with the matched primary key (Carrid)
_onRouteMatched: function(oEvent) {
// ...
var oArgs = oEvent.getParameter("arguments");
var oFlightTable = oView.byId("detailTable");
oFlightTable.bindAggregation("items", {
path: "/CarrierSet(" …Run Code Online (Sandbox Code Playgroud)