CodeIgniter 2 + xajax 0.5

投稿者: | 2012年8月28日

前にどっかの記事を参考にやったんだけど、その記事が消えてしまっていたので自分のためにmemo

CodeIgniterは展開済みとして、Xajaxをダウンロードして展開する。

xajax_core と言うディレクトリを、 xajax に変更し、 application/third_party へ配置
xajax_js と言うディレクトリは CodeIgniter の index.php と同じ場所に配置

xajax/xajax.inc.php を xajax/xajax.php に変更する。(コンストラクタ側のコードで対応)

CodeIgniterのコントローラ側では、コンストラクタに以下のコードを追加

include(APPPATH.'third_party/xajax/xajax.inc'.EXT);
// Xajax設定
$this->xajax = new xajax(base_url());
$this->xajax->configure("javascript URI", base_url());
//$this->xajax->configure("debug", true);
$this->xajax->register(XAJAX_FUNCTION, array('_func', $this, '_xajax_func'));
$this->xajax->processRequest();

メソッドは以下の感じ。

function _xajax_func() {
	$objResponse = new xajaxResponse();

	$objResponse->assign("foo", "innerText", $this->foo);
	$objResponse->call("hogehoge");
	return $objResponse;
}

ビューは以下の感じ

<body onload="xajax__func(); return true;">

ちなみに、xajax_js を違うところに配置する場合は、以下の2つのファイルの中のパスを書き換える必要があるっぽい。

  • xajax/xajax.php
  • xajax/plugin_layer/xajaxDefaultIncludePlugin.inc.php

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください