Tuesday, July 14, 2009

使用 xajax 的元素概述

Xajax 是一個 PHP 的 framework,不用知道 ajax 實際的運作就可以任意的操作 ajax 該有的效果。唯一要注意的是,我們所撰寫出來的 javascript 部份已經不是 client side,取而代之的比較像是server side。稍微加重的 server 的 loading,但是若 javascript 擁有關於商業化的實做,這部份的確可以完全隱藏起來。目前最新版本是 0.5 Final 可以按這裡到[下載頁面],或是到官方網站看更多資訊。

如何使用xajax要注意以下這些元素 :

1. 獲取 xajax 函式庫資訊,告知 php xajax的相對位置。
require_once("xajax_core/xajax.inc.php");

2. 產生 xajax 物件。
$xajax = new xajax();

3. 向 xajax註冊 PHP 用到的函式。
$xajax->registerFunction("phpFunction");

4. 撰寫該 PHP 函式,並利用 xajaxResponse 作 XML回應。
function phpFunction($arg) {
// 實體化 xajaxResponse 物件
$objResponse = new xajaxResponse();

// 回傳 xajaxResponse 物件
return $objResponse;
}

5. 發出 xajax 處理請求。
$xajax->processRequest();

必須在任何輸出之前寫下此行程式碼。

注意 本函式為處理非同步要求, 因此第一次向伺服器索取網頁資料並不會操作 processRequest(), 而在第二次之後的處理會判斷使用者所呼叫的是哪一個回應函式, 再傳入使用者所引入的參數並呼叫, 最後由 processRequest() 呼叫 exit() 終止。

6. 令 clinet 實行 xajax 必要的 javascript,剛剛註冊的函式會轉換成 js 的程式碼給 browser。
<?php $xajax->printJavascript("$PATH"); ?>

因此本行程式要放在 <head> 之間,就當作是自己在寫 javascript 就可以了。

注意 printJavascript("$PATH")的 path 必須是在 xajax_js 資料夾的上層。

知道了六個步驟之後,在閱讀底下第一篇海芋小站的文章就可以瞭解正確的使用 xajax 了!
而 xajax 最重要的就是 xajaxResponse 物件,不管在哪個版本該物件都是列為互動的首要條件。
要能夠順利的使用 php 來產生相對應的 ajax 效果,的確要依賴 xajaxResponse。

官方提供的文件
  • Online API Docs
  • [乘法範例]:擷取前面兩的元素內的數值,並作運算,在指派給第三格數值。如果是 PHP 的話按下送出會依據 action 內容跑到程式頁面或是重新讀取一次。[!] 當然囉!要 PHP 不重新換頁也是有方法的,例如:隱藏一個 iframe之類的,不過把焦點放在 ajax 上面吧。

相關閱讀:

No comments:

Post a Comment