我正在尝试将abap程序中的内部表中的数据导入SAPUI5应用程序。 从ABAP方面,我已将所需数据转换为JSON格式并将其发送到本指南中提到的内容。
我在控制器的“读取”部分编写了以下代码
$.ajax({
type: 'GET',
url: 'http://socw3s1er67.solutions.glbsnet.com:8000/sap/bc/Z_tets_json?sap-client=950',
success: function(data) {
alert(data[1].PROJECT);
alert(data[0].MANDT);
var oModel_Projects = new sap.ui.model.json.JSONModel();
oModel_Projects.setData({
modelData: data
});
}
});
警报似乎工作正常,并从内部表返回预期数据。 我想知道如何使用模型将这些数据绑定到特定的表中。
谢谢!
答案 0 :(得分:1)
澄清后更新了答案: 试试这个解析器:
var html = "<table><tr><td>MANDT</td><td>PROJECT</td><td>DESCRIPTION</td></tr>";
for(var index in data){
html+="<tr><td>"+data[index].MANDT+"</td><td>"+data[index].PROJECT+" </td><td>"+data[index].DESCRIPTION+"</td></tr>";
}
html+="</table>";
//now you can insert this html into some div like as follows: $("#div1").html(html);
或谷歌搜索一些jquery gridview,正如我在评论中所建议的那样。
答案 1 :(得分:1)
嗯,你的代码看起来还不错,但还有其他部分缺失了,可能还有问题......
你的桌子是如何构建的? 它应该是:
var table = new sap.ui.table.DataTable({
title: 'My first table',
width: '100%'
});
您是否对连接表和型号进行了以下调用?
table.setModel(oModel_Projects);
table.bindRows("modelData");
您是否正确创建表格的列?
label = new sap.ui.commons.Label({ text: 'Client' });
template = new sap.ui.commons.TextView({ text: '{MANDT}' });
col = new sap.ui.table.Column({ label: label, template: template });
table.addColumn(col);
使用placeAt
方法将表格正确放入HTML吗?