Кто-то из команды App Maker из Google предложил следующее:
В всплывающем окне подтверждения установите настраиваемое свойство типа Dynamic. Для целей этого примера вызовите свойство CallbackFn.
Для события onClick вашего ConfirmButton во всплывающем окне установите следующий клиентский скрипт:
if (typeof widget.root.properties.CallbackFn === 'function') {
widget.root.properties.CallbackFn();
}
widget.root.visible = false;
Для кнопки удаления в таблице источников данных установите следующий клиентский скрипт:
deleteItem(widget.datasource);
В разделе сценариев добавьте клиентский сценарий или вставьте следующую функцию в существующий клиентский сценарий:
function deleteItem(datasource) {
var popup = app.popups.ItemDeleteConfirmationDialog;
popup.properties.CallbackFn = function() {
datasource.deleteItem();
};
popup.visible = true;
}
Поскольку ваша кнопка удаления в вашей таблице находится в строке таблицы, вам может потребоваться изменить переменную функции, передаваемую в функцию deleteItem (), следующим образом:
deleteItem(widget.parent.parent.datasource);
Если это не сработает, дайте мне знать. У меня это настроено в моем собственном приложении с гораздо более сложной логикой, и в некоторых случаях я передаю несколько переменных моей функции deleteItem (), и она прекрасно работает.