php xajax库基本知识

xajax 网页开发步骤

1. 构建对象及初始化设置

require_once(“ ./xajax/xajax_core/xajax.inc.php”);  //包含类文件

$xajax= new  xajax();  //创建对象

$xajax->configure(“javascript URL”,”./”)  //设置javascript 路径

autoCompressJavascript(‘./xajax/xajax_js’);

路径程序可以自己设置,算法很精良,一般不会出错 。

2.注册响应函数

处理请求/产生响应函数的操作都可以封装在一个自定义的 “响应函数”中,并用前一步创建的xajax 对象调用 register() 方法注册”响应函数”也就是让 xajax 知道当发生异步请求时,它要调用谁来处理。

$xajax->register( XAJAX_FUNCTION ,’adding’);  //注册响应函数

XajaxRequst 类提供的方法来产生此段程序。

         要产生客户端调用响应函数的JavaScript 程序代码,必须在注册响应函数时获取其返回的XajaxRequest 对象。(也就是说xajax->register() 函数返回XajaxRequest类对象)。

1XajaxRequest 类对象的 addParameter() 方法

         此方法的用途是设置客户端的 xajax_xxx() 调用中所要加入的参数。加入的方式是在调用方法时,指定参数的类型及参数值。

                   $Request->addParameter( sType , sValue)

其中: sType :参数类型   sValue :参数值

类型:              XAJAX_FORM_VALUES

                            XAJAX_INPUT_VALUES

                            XAJAX_CHEKED_VALUES

                            XAJAX_ELEMENT_INNERHTML

                            XAJAX_JS_VALUE           好多好多

2在需要调用JavaScript 程序的位置,调用 printscript()输出客户端的xajax_xxx()调用。

比如 onclick=”$Request->printscript()”;

3.请 xajax 处理异步请求

$xajax->processRequest();  //处理异步请求

l  判断客户端调用的是哪一个响应函数。

l  以客户端请求中发送的参数调用响应函数来处理。

l  响应函数处理完毕后, processRequest 会调用 exit()结束程序。

4.编写响应函数

         用register() 方法注册响应函数后,就必须编写这个响应函数,返回处理后的结果。

响应函数是使用xajaxResponse 类对象的 assign() 方法设置响应的内容。

         $objResponse=new xajaxResponse();

         $objResponse->assign( $sTarget , $sAttribute , $sData);

其中:  $sTarget :要设置的HTML元素的id。

                   $sAttribute: 要设置的属性名称。

                   $sData: 要设置的 填充内容。

1assign()方法指定更改某个标记的内容来产生要响应给客户端数据。

2append(),prepend()这两个方法用法与语法与 assign() 类似,只不过是将数据”追加”到指定标记现有数据的 后面/前面。

3$objResponse->alert(‘来自PHP的信息’);

         alert()的参数是一个文字信息,它会让客户端执行 Javascript 的 alert()显示信息框。

4call()以客户端的JavaScript 函数为参数调用此方法。

                            $objResponse->call(‘test’);

5script()方法是在客户端执行一段JavaScript 程序,调用时必须将 “客户端要执行的程序”(字符串)当成 script()的参数。

                            $objResponse->script(‘window.close()’);

6redirect()方法的作用是让客户端重定向参数所指的网页。

                            $objResponse->redirect(‘http://www.flag.com’);

5. 输出JavaScript 程序代码

         最后要处理的就是客户端的JavaScript 程序,虽然我们不必自行编写AJAX的Javascript 程序,但是仍然需要请xajax帮忙输出这些程序。

         在网页的<head>段落中调用xajax的printJavaScript()方法,即可输出xajax的JavaScript程序代码。

                            $xajax->printJavaScript();  //此处参数与URL正确设置有关

错误提示:

         Error: the xajax javascript component could not be included.

                    Perhaps the URL is incorrect?

                    URL: ../xajax_js/xajax_core.js

在printJavaScript()输出的程序代码中,除了 xajax 共享的部分外,它也会替前面注册的PHP响应函数产生对应的 xajax_xxx() 函数供我们在客户端使用。

原文地址:https://www.cnblogs.com/air5215/p/5351790.html