几个小时后,我正在尝试获取树表的选定行的模型数据。
我用这个例子:https://openui5.hana.ondemand.com/#/sample/sap.ui.table.sample.TreeTable.JSONTreeBinding/preview
另外,我在列中添加了sortProperty和filterProperty。到现在为止一切正常。
我想要做的是通过所有选定行的ajax提交json数据。为此,我需要获取所选行的json数据。
我尝试了什么:
var oTable = this.getView().byId("tableName").getSelectedIndicies()
然后
for(var i=0; i<=oTable.length; i++) {
this.getView().byId("tableName").getModel().getData().jobs[oTable[i]]
}
似乎当我使用分拣机和过滤器功能时,索引不再正确。索引键不会改变。
任何想法如何解决我的要求?提前thx!
您可以执行一些小的更改,以便在for循环中获取正确的数据。
var sPath =
TreeTable.getRows()[0].getBindingContext()
oTreeTable.getModel().getProperty(sPath)
这是我解决它的方式:
var oJSON = {};
var aData = [];
var oTable = this.getView().byId("TreeTable");
var aIndicies = oTable.getSelectedIndices();
var oSelect = this.getView().byId("selectStandort").getSelectedKey();
for (var i=0; i<aIndicies.length; i++) {
var oTableContext = oTable.getContextByIndex(aIndicies[i]);
var rowData = oTable.getModel("jobs").getProperty(oTableContext.getPath());
aData.push(rowData);
}
oJSON.jobs = aData;
oJSON.standort = oSelect;