1.3からは非推奨になりました。2.0では削除されます。
代わりにJsヘルパーまたはHtmlヘルパーを使用して下さい。

古い情報(1.2)

Prototypescript.aculo.usを使ったAjaxのためのヘルパーです。ビューの中でJavascriptを書かずに、phpを使ってAjaxを実装できるので便利です。


Ajaxでリクエストを受け取るコントローラーのアクションでは使用するビューのレイアウトを'ajax'に切り替えます。ajaxというヘッダやフッタのないレイアウトが用意されています。(Request Handler コンポーネントを使って自動でajax用レイアウトに切り替える事もできます。)

$this->layout="ajax";

主なメソッド

  • link(string $title, string $href, array $options, string $confirm, boolean $escapeTitle)
  • remoteFunction(array $options)
  • remoteTimer(array $options)
  • form(string $action, string $type, array $options)
  • submit(string $title, array $options)
  • observeField(string $fieldId, array $options)
  • observeForm(string $fieldId, string $url, array $options)
  • autoComplete(string $fieldId, string $url, array $options)
  • drag(string $id, array $options)
  • drop(string $id, array $options)
  • dropRemote(string $id, array $options)
  • slider(string $id, string $track_id, array $options)
  • editor(string $id, string $url, array $options)
  • sortable(string $id, array $options)

主なオプション

  • $options['url'](リクエストを送信するCakePHPスタイルのURL)
  • $options['update'](更新するDOMエレメントのID)
  • $options['frequency'](チェックする間隔)
  • $options['type'](リクエストのタイプ、デフォルトはasynchronous)
  • $options['indicator'](読み込み中に表示するDOMエレメントのID)

その他のオプション

script.aculo.usで使用するオプションを指定したりします。

コールバック・オプション

一連の動作中に呼び出すJavascriptの関数を指定します。

  • $options['condition'](リクエストを実行するかどうかの条件)
  • $options['confirm'](リクエストを実行するかを確認するアラート)
  • $options['before'](リクエストが作成される前)
  • $options['after'](リクエストを送信した直後)
  • $options['loading'](サーバーからデータを受信している時)
  • $options['loaded'](データの受信が完了した時)
  • $options['interactive'](データを受信し終わる前に操作した時)
  • $options['complete'](XMLHttpRequestが完了した時)

link(string $title, string $href, array $options, string $confirm, boolean $escapeTitle)

echo $ajax->link("Delete this post", null, array("update" => "posts", "url" => "delete/{$postid->id}","loading" => "Element.show('loading')"));

CakePHP Note (v1.3)

Index