2

私は、Application Express (Apex) で古い PL/SQL Web Toolkit フロント エンドを再作成する任務を負っています。

ページが送信された後、計算と検証の後にポップアップを表示したいと思います。

ボタンをクリックするか、Enter キーを押すと、ページを送信できます。

私はグーグルでモーダルポップアップを動作させました(javascriptによって呼び出されます)が、適切な時点で呼び出すことができないようです。送信時に(検証などの前に)呼び出すことはできますが、検証後に呼び出すことはできません。

正しい処理ポイントで URL へのブランチを作成して、URL を次のように設定しようとしました。

javascript:openForm();

しかし、その後、ページが表示されないというエラーが表示されます。

誰かが私がこれを行う方法を説明できますか?

頂点バージョン: 4.0.2 Oracle 10g

4

1 に答える 1

2

あなたがやりたいことは、検証を実行し、値をセッション状態に送信することですが、それ以上のプロセスは実行しないことだと思います。ただし、ページを送信すると、サーバーに送信されます。ページ処理領域に表示されるすべてのものが順次起動します。基本的にクライアント側にいないため、プロセスの途中で JavaScript 関数を呼び出す方法はありません。

できることは、同じページへの検証後にブランチを作成することです。それにリダイレクトしますが、REQUEST値を指定します (例: ) OPENFORM

JavaScript を実行してモーダル ページを開く true アクションを使用して、ページの読み込み時に起動する動的アクションを作成します。次に、動的アクションの条件を に設定しRequest = Expression 1、要求値を式 1 ( OPENFORM) に指定します。(これは [条件]領域であり、[いつ] 領域の [条件] フィールドではないことに注意してください)

これにより、ページが送信され、検証され、再ロードされますが、リクエスト値があり、動的アクションが起動して、モーダル ページが開きます。

興味深い点: ただし、このページに実際のプロセスがある場合は、Enter キーに注意してください。デフォルトでは、ボタンはリクエスト値が名前に設定された状態でセッションに送信されるため、プロセスまたはブランチを条件付きで実行できます。Enterキーは、私が信じているリクエスト値セットで送信されません。したがって、分岐が条件付きの場合、Enter キーは単純にスキップする可能性があります。

于 2012-07-05T11:50:51.543 に答える