Tak, możesz utworzyć walidację po stronie serwera za pomocą Dynamic Action
oraz funkcja JavaScript apex.server.process
.
Podstawowy przykład do zademonstrowania-
- Utwórz element strony, np. P4_NAME na Twojej stronie
- Utwórz proces strony i wybierz punkt wykonania jako „AJAXCALLBACK”.
W poniższym kodzie sprawdzam wartość P4_ITEM, możesz napisać własną logikę do walidacji.
BEGIN
IF :P4_NAME = 'HIMANSHU'
THEN
HTP.prn ('SUCCESS');
ELSE
HTP.prn ('ERROR');
END IF;
END;
- Teraz utwórz nową dynamiczną akcję i wybierz Zdarzenie jako „STRAĆ FOCUS”, Typ zaznaczenia jako „Element(y)” oraz w Element(-ach) wybierz nazwę przedmiotu.
- Utwórz prawdziwe działanie i wybierz „wykonaj kod JavaScript”.
W sekcji kodu zaimplementuj apex.server.process
jak poniżej-
apex.server.process('validate_name',
{
pageItems : '#P4_NAME'
}
,
{
dataType : 'text', success : function(data)
{
if(data != 'SUCCESS')alert(data);
}
}
)
Pierwszym argumentem jest nazwa procesu strony (validate_name), który stworzyliśmy wcześniej, drugim dane, które chcesz przesłać do procesu, a trzecim opcje.Więcej informacji na temat apex.server.process
Zrobione. Odśwież swoją stronę i sprawdź. W przypadku niepowodzenia weryfikacji otrzymasz alert.
Możesz dalej dostosować swój kod JS, aby wyświetlać komunikaty o błędach w bardziej wymyślny sposób zamiast wyświetlać alert.