Я работаю над приложением SAPUI5. У меня есть представление XML, которое содержит XML- фрагмент и кнопку для сохранения.
Фрагмент содержит несколько элементов управления, таких как раскрывающееся меню, текстовое поле и таблица. Когда я нажимаю кнопку сохранения, мне нужно получить все строки в таблице и вызвать службу обновления OData.
Проблема заключается в методе onSave
в представлении контроллера. Я получаю сообщение об ошибке при доступе к таблице с помощью идентификатора. Может ли кто-нибудь помочь мне и советам, как я могу получить доступ к элементам управления, используемым в фрагментах по их идентификатору в контроллере?
Вот фрагмент кода:
---- Посмотреть
<mvc:View xmlns:mvc="sap.ui.core.mvc" xmlns:core="sap.ui.core" xmlns:form="sap.ui.layout.form" xmlns="sap.m">
<Page>
...
<form:SimpleForm>
<core:Fragment id ="fr1" fragmentName="first" type="XML"/>
<Button id="id1" press="onSave"/>
</form:SimpleForm>
</Page>
</mvc:View>
---- Определение фрагмента
<core:FragmentDefinition xmlns="sap.m" xmlns:core="sap.ui.core">
<Table id="tab1" mode="MultiSelect">
...
</Table>
</core:FragmentDefinition>
---- Контроллер
sap.ui.controller("view", {
onSave: function() {
//var tab = this.getView().byId("tab1"); // Not working
var tab = sap.ui.getCore().byId("tab1"); // Not working
},
// ...
});