この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Newer Version Available

This content describes an older version of this product. View Latest

JavaScript Remoting

JavaScript から Apex コントローラのメソッドをコールするには、VisualforceJavaScript Remoting を使用します。これにより、AJAX 機能を実装した標準 Visualforce コンポーネントでは実現できない、複雑で動的な動作を行うページを作成できます。

JavaScript Rmoting は、次の 3 つで構成されています。
  • JavaScript で記述される、Visualforce ページに追加するリモートメソッドの呼び出し。
  • Apex コントローラクラスのリモートメソッド定義。このメソッドは Apex で記述されますが、通常の action メソッドとはいくつかの違いがあります。
  • JavaScript で記述される、Visualforce ページに追加または含めるレスポンスハンドラコールバック関数。
コントローラでは、Apex のメソッド宣言は、次のように @RemoteAction アノテーションが先頭に付加されます。
1@RemoteAction
2global static String getItemId(String objectName) { ... }
Visualforce ページで JavaScript Remoting を使用するには、要求を次の形式の JavaScript 呼び出しとして追加します。
1[namespace.]controller.method(
2    [parameters...,]
3    callbackFunction,
4    [configuration]
5);
  • namespace はコントローラクラスの名前空間です。組織に名前空間が定義されている場合、またはクラスがインストール済みパッケージに基づく場合は必須です。
  • controllerApex コントローラの名前です。
  • method はコールする Apex メソッドの名前です。
  • parameters はメソッドが取るパラメータのカンマ区切りのリストです。
  • callbackFunction はコントローラからの応答を処理する JavaScript 関数の名前です。匿名関数をインラインで宣言することもできます。callbackFunction ではメソッドコールの状況と結果をパラメータとして返します。
  • configuration は、リモートコールと応答の処理を設定します。Apex メソッドの応答をエスケープするかどうかを指定するなど、リモートコールの動作を変更する場合にこれを使用します。

詳細は、『Visualforce 開発者ガイド』の「Apex コントローラの JavaScript Remoting」を参照してください。