Oracle
 sql >> Database >  >> RDS >> Oracle

Come posso creare la convalida live lato server Oracle Apex senza dover inviare la pagina

Sì, puoi creare la convalida lato server utilizzando Dynamic Action e la funzione JavaScript apex.server.process .

Un esempio di base da dimostrare-

  • Crea un elemento della pagina, ad es. P4_NAME nella tua pagina
  • Crea un processo di pagina e seleziona il punto di esecuzione come "AJAXCALLBACK".

Nel codice sottostante sto controllando il valore P4_ITEM, puoi scrivere la tua logica per convalidare.

BEGIN
   IF :P4_NAME = 'HIMANSHU'
   THEN
      HTP.prn ('SUCCESS');
   ELSE
      HTP.prn ('ERROR');
   END IF;
END;
  • Ora crea una nuova azione dinamica e seleziona l'Evento come "PERDERE FUOCO", Tipo di selezione come "Articolo/i" e in Articolo/i seleziona il nome dell'elemento.

  • Crea una vera azione e seleziona "esegui codice JavaScript".

Nella sezione codice, implementa apex.server.process come sotto-

apex.server.process('validate_name',
{
   pageItems : '#P4_NAME'
}
,
{
   dataType : 'text', success : function(data)
   {
      if(data != 'SUCCESS')alert(data);
   }
}
)

Il primo argomento è il nome del processo della pagina (validate_name) che abbiamo creato in precedenza, il secondo i dati che si desidera inviare al processo e il terzo sono le opzioni. Per maggiori dettagli su apex.server.process

È fatta. Aggiorna la tua pagina e controlla. In caso di mancata convalida riceverai un avviso.

Puoi personalizzare ulteriormente il tuo codice JS per visualizzare i messaggi di errore in modo più fantasioso invece di mostrare l'avviso.