SAP UI5如何刷新表中的模型数据

时间:2018-04-26 11:06:07

标签: javascript sapui5

我有一个 sap.ui.Table ,有10条记录。如果我通过选择特定行对 sap.ui.Table (如提交)执行任何操作,则应执行操作,并且应从表中删除。行数据已提交但行未从表中删除。我尝试刷新桌子。但是对我没有用。下面是一段代码。

            this.oDataModel.create("/testService", dataToSend, {
            success: function(data, resp) {                 
                var oXML = jQuery.parseXML(resp.headers["sap-message"]);
                var oXMLMsg = oXML.querySelector("message");
                var response = oXMLMsg.textContent;
                MessageBox.success(response);

                var listBinding = this.getView().byId("idLeaveTable");
                var leaveModel = listBinding.getModel("approvalModel");
                leaveModel.refresh(true);
                that.successApprovalModel();
            },
            error: function(err) {
                var oXML = jQuery.parseXML(err.response.body);
                var oXMLMsg = oXML.querySelector("message");
                MessageBox.error(oXMLMsg.textContent);
            }
        });

如果iam向后端服务提交任何行,则应从表和模型中删除相应的行。截至目前,它还没有发生。但是,如果我重新加载应用程序,那么相应的行将被删除。

有人可以帮我解决这个问题。

提前谢谢

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

this.byId("lineItemsList").getBinding("items").refresh();

答案 1 :(得分:0)

对于oData模型,您应该使用'remove'方法来触发对oData服务的DELETE请求。 “create”方法触发POST请求。