sql >> データベース >  >> RDS >> Oracle

ページを送信せずにOracleApexサーバー側のライブ検証を作成するにはどうすればよいですか。

    はい、Dynamic Actionを使用してサーバー側の検証を作成できます およびJavaScript関数apex.server.process

    実証する基本的な例-

    • ページアイテムを作成します。例:ページ内のP4_NAME
    • ページプロセスを作成し、実行ポイントを「AJAXCALLBACK」として選択します。

    以下のコードでは、P4_ITEM値をチェックしていますが、検証する独自のロジックを記述できます。

    BEGIN
       IF :P4_NAME = 'HIMANSHU'
       THEN
          HTP.prn ('SUCCESS');
       ELSE
          HTP.prn ('ERROR');
       END IF;
    END;
    
    • 次に、新しい動的アクションを作成し、イベントを選択します 「LOSEFOCUS」として、選択タイプ 「アイテム」として、アイテム アイテム名を選択します。

    • 真のアクションを作成し、「JavaScriptコードの実行」を選択します。

    コードセクションで、apex.server.processを実装します 以下のように-

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

    最初の引数は前に作成したページプロセス名(validate_name)、2番目はプロセスに送信するデータ、3番目はオプションです。 apex.server.process

    されております。ページを更新して確認してください。検証が失敗すると、アラートが表示されます。

    JSコードをさらにカスタマイズして、アラートを表示する代わりに、より凝った方法でエラーメッセージを表示することができます。




    1. Oracle MySQL、Percona Server、MariaDBの比較

    2. Postgresで遅いSELECTDISTINCTクエリを高速化するためのソリューション

    3. Mysql/Phpmyadminのドイツ語ウムラウト

    4. RailsTutorial 3.2Ch11-PostgreSQL構文エラーがステータスフィードを壊す