CQ-CSER

计算机爱好者

Sajax/php下ajax简易框架

Posted on | 三月 6, 2010 | No Comments

http://www.modernmethod.com/sajax/

 使用sajax其实很简单,首先当然要包含sajax这个文件
   require(“Sajax.php”);

$sajax_remote_uri = “http://a..php;”    //这里是远程要处理判断结果的一个页面


sajax_init();  //Sajax初始化函数,看过Sajax.php的都知道,其实这个函数的内容是空的,这里写的目的就是告诉你这个页面会使用Sajax。因为Sajax并不是一个类,而是一个函数集,所以不需要建立对象,实际应用中不执行这个函数也没有关系。
sajax_export(“riqi”);

//用sajax_export定义将要在Javascript输出的函数,也就是从HTML页面中可以使用的函数。将函数的名字传递给sajax_export,如果多个函数可以向sajax_export传递多个参数来实现
sajax_handle_client_request();
//处理客户端需求函数,开始访问页面的时候不会起作用,但是当客户端将需求(运行哪个函数,参数是多少等等)传递过来的时候就由这个来处理了。
好了,后台的PHP部分结束,下面是HTML显示部分,纯粹的HTML基础就不管了,只说和Sajax使用有关的部分

<?
sajax_show_javascript();
//显示Sajax生成的Javascript,
?>

接下来我们写处理的函数
比如在那个“确定”按钮的onclick事件中,如下写:

function getriqi()
{
 var yearend=frm.yend.value
    。。。。。。。
     x_riqi(yearend,getriqidb);

}
这里比如可以先获得要判断计算的值(比如这里的yearend),然后注意
x_riqi(yearend,getriqidb)这句话
这里的riqi函数,是在前面PHP中用sajax_export定义,由sajax_show_javascript输出的函数之一,其格式就是你在sajax_export中定义的函数名前面加x_。,接着可以把要传递的参数一个个接着写下去。

接下来就可以写getriqidb这个判断function里,比如:
function getriqidb(content)
{
document.getElementById(‘content’).innerHTML=content
………….
}
注意,这里其实是一个用来显示经过远端计算页面计算返回的结果的方法来的,比如远端的页面a.php收到参数后,经过计算,异步返回给页面内容content,就可以在这里输出拉,比如上文提到的,根据返回的结果来填充下拉列表框。
最后,我们写那个远端判断的页面a.php
<?
if($_GET['rs'] == ‘riqi’)
{
$yearend=$_GET['rsargs'][0];
….
//之后做相关的业务逻辑计算

}
这里,用$_get['rs']来判断是否等于“riqi”,”riqi”是之前我们定义好的(sajax_export(“riqi”);),
如果是的话,则表示是来自sajax的请求,注意 $_get['rs']也是固定的,不能改变。
之后用 $_GET['rsargs'][0]来取出第一个参数,如此类推。。。。。

最后,要将结果返回给前端的页面,用
 echo(“##”.$content);
注意,这里的输出内容变量$content,要和前端页面里function getriqidb(content)里的定义好的content在命名上是相同的哦。

而可能是sajax的一个BUG(在IBM DW站上有说),在输出时,前端会没了两个字符,比如要输出的内容为2004,会变成04,而在前面加上##时,就正确了

Examples

Here are two overly simplistic examples:

Graffiti Wall: → Try it or see source

Calculator: → Try it or see source

Still confused? Read our Frequently Asked Questions or ask for help in our message board.

Download Now

 

The most recent version 0.12, including code and examples:

Download sajax-0.12.tgz Download sajax-0.12.zip

 

Version 0.12, code only: Sajax.php.txt

相关文章:

  1. SimpleViewer
  2. jquery学习笔记4
  3. jquery学习笔记3
  4. php编写易范错误

评论|Comments

留言|Leave a Reply





  • Archives

  • SUNSHINE

  • About

    本博客采用创作共用版权协议,要求署名、非商业用途和保持一致. 转载本博客内容也遵循“署名-非商业用途-保持一致”的创作共用协议.

    订阅

    Search

    Admin