var oComponent = this.getOwnerComponent(); var oParams = oEvent.getParameters(); if(oParams.reason!=""成长"){ return; } var total = oParams.total; var Actual = oParams.actual;
var oModelAdd = new sap.ui.model.json.JSONModel(); //临时模型以获取更多数据 oModelAdd.loadData(oComponent.get_service_base()+" service.php?limit = 5&from =" + total,{},false); //您的服务支持偏移量,并且可以为您提供数据子集 var aJSONadd = oModelAdd.getJSON(); var oJSONadd = JSON.parse(aJSONadd);
var oModelService = this.getView()。getModel(" Service"); //此模型用于表绑定 var aJSON = oModelService.getJSON(); var oJSON = JSON.parse(aJSON);
您可以通过预订表的event updateStarted并检查事件参数中的"增长"原因来实现。 这样,您便知道已按下"更多"按钮。
示例:
您有某种提供数据的Web服务(例如php)。 您设置了具有前10行的模型,并将表的grinTreshold激活为5。这样做时,由于模型已初始化为10行,因此您可以使用更多按钮。 感谢updateStarted事件,您可以从服务请求更多数据,结合两个JSON并更新模型:
var oComponent = this.getOwnerComponent();
var oParams = oEvent.getParameters();
if(oParams.reason!=""成长"){
return;
}
var total = oParams.total;
var Actual = oParams.actual;
var oModelAdd = new sap.ui.model.json.JSONModel(); //临时模型以获取更多数据
oModelAdd.loadData(oComponent.get_service_base()+" service.php?limit = 5&from =" + total,{},false); //您的服务支持偏移量,并且可以为您提供数据子集
var aJSONadd = oModelAdd.getJSON();
var oJSONadd = JSON.parse(aJSONadd);
var oModelService = this.getView()。getModel(" Service"); //此模型用于表绑定
var aJSON = oModelService.getJSON();
var oJSON = JSON.parse(aJSON);
oJSON.records = oJSON.records.concat( oJSONadd.records);
aJSON = JSON.stringify(oJSON);
oModelService.setJSON(aJSON);
非常感谢。 :D
您是否已经尝试过设置Table控件的属性growth =" true"和growthThreshold =" 10"? 在这种情况下,当应用程序加载时,表仅显示10条记录,底部带有"更多"按钮。
您好,Julio,
Json是本地模型,那里的服务器调用没有任何意义,但是根据模型中可获取的数据大小和阈值,即使对于json模型,增长也可以工作。
一周热门 更多>