Oracle APEX - проверка выбора IG при отправке - PullRequest
0 голосов
/ 05 июня 2019

У меня есть интерактивная сетка на моей странице, которая позволяет выбирать строки. Когда пользователь нажимает кнопку, страница переходит на другую страницу. Мне нужно создать проверку, чтобы гарантировать, что страница только разветвляется, если были выбраны некоторые записи. Каков наилучший способ сделать это?

1 Ответ

0 голосов
/ 06 июня 2019

У меня нет претензий, мой путь - лучший, но он работает:

Вам нужно присвоить кнопке статический идентификатор (мой будет LinkButton).

Затем вы должны создать динамическое действие в вашей сетке для события Selection change [Interactive Grid]. Сделайте True Action, которую Execute JavaScript Code должен сделать этот бит кода:

if(this.data.selectedRecords[0] != undefined) {
    //This is what happens when rows are selected
    document.getElementById("LinkButton").disabled = false;
}
else {
    //This is what happens when no rows are selected
    document.getElementById("LinkButton").disabled = true;
}

** Вероятно, не лучшее решение, скорее всего, есть способ добиться этого с помощью Grid Widget из APEX'S API , но я не смог вернуть ни один объект из моей сетки, используя его , Мой ответ отключит кнопку, если в этой сетке будет выбрана какая-либо строка (если у вас есть несколько отчетов / сеток), а не в конкретной Интерактивной сетке.

Мой ответ был очень вдохновлен этим человеком: http://thejavaessentials.blogspot.com/2017/03/getting-selected-rows-in-oracle-apex.html и этим сообщением: Отключение и включение кнопки ввода html

** Я тестировал его на APEX 19.1, но, как человек выше работал над APEX 5, я думаю, что он должен работать и на нем.

...