如何在SAPUI5中绑定表单?

时间:2019-05-27 05:42:21

标签: sapui5

我试图弄清楚如何在UI5中绑定一个简单表单(而不是列表),以便可以提交到oData后端。如何使用简单的表格呢?

这是我的控制器代码(如果我要在列表中执行)-但我不知道如何处理表格:

var oList = this.byId("addapp"),
                oBinding = oList.getBinding("items"),
                // Create a new entry through the table's list binding
                oContext = oBinding.create({
                    "application_id": 0,
                    "product_name_short": 'Test',
                });

这是我到目前为止尝试过的,但是得到了不确定的值:

var x =this.getView().byId("addapp").getBinding("items");

1 个答案:

答案 0 :(得分:0)

如果您已为视图设置了模型,则可以使用Element.bindElement将现有对象绑定到视图:

this.getView().byId("addapp").bindElement("/path/to/your/object");

如果您要使用临时模型(单击“添加”或类似内容即可使用数据):

onInit: function () {
    // Initial values of the form
    this.getView().setModel(new sap.ui.model.json.JSONModel({
        property1: "",
        property2: "",
        property3: ""
    }), "newEntry");

    // Bind the form to the json model
    this.getView().byId("addapp").bindElement("newEntry>/");
},

onAddButtonClick: function() {
    // Get the form values
    var newEntry = this.getView().getModel("newEntry").getData();

    // Use the OData model to create a new entity
    var oDataModel = ...;
    oDataModel.create("/path/to/your/entityset", newEntry, {
        success: function() {
            // entity was created
        }
    });
}