`
isiqi
  • 浏览: 16035071 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论
阅读更多
最近项目里偶然要用到一些小的ajax功能,PHP下的AJAX框架也很多选择的,这次没考虑太多,选了个最短小的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,而在前面加上##时,就正确了,哈哈。


SAJAX还在发展中,比较小巧,但也有不足,但用起来还是方便的,大家可以参考IBM DW站上关于SAJAX的文章介绍,很不错的
分享到:
评论

相关推荐

    sajax-0.10

    WELCOME TO SAJAX ---------------- Sajax is a cross-platform, cross-browser web scripting toolkit that makes it easy to expose functions in your code to JavaScript. For more information about ...

    通过PHP和Sajax使用Ajax之JavaScript

    在本教程中,将学习 Ajax 以及围绕它的应用的问题。将用 PHP 构建一个 Ajax 应用程序,显示以前写的一个教程中的...然后将把简单 Ajax 工具包(Sajax)集成进 Ajax 应用程序,它可以同步 Ajax 的使用,从而简化开发。

    SANJER: SAjax aNd Json wrappER-开源

    SANJER是一个包装器类,它将SAJAX(简单AJAX工具包)和JSON(JavaScript对象表示法)组合在一起。 两者结合使用时,可以实现出色的AJAX可用性。 SANJER提供了一种简单方便的方法来将两者结合在一起。

    结合AJAX进行PHP开发之入门

    本文将使用两种方法创建一个简单的相册:传统的 Web 应用程序和基于 Sajax 的应用程序。我们将用 PHP 编写一个相册,读取某一目录中的内容,显示缩略图组成的表格。如果用户单击一个缩略图,就会完全展开该图像。...

    自己整理的一个JS函数库 AJAX dom隐藏显示 数据整理 只有12KB 压缩后5kb

    P("http://localhost/test/ajax/sajax/add.php",lcc,data) P("http://localhost/test/ajax/sajax/add.php",lcc) G("http://localhost/test/ajax/sajax/add.php",lcc,data) G(...

    结合Ajax进行PHP开发,第1部分:入门一个简单的相册

    创建一个简单的相册添加Sajax扩展相册元数据结束语异步JavaScript和XML(AsynchronousJavaScriptandXML,Ajax)无疑是最流行的新Web技术。“结合Ajax进行PHP开发”这个系列包括两部分,我们将完全使用PHP和...

    用jquery存取照片的具体实现方法

    1.用jquery 调用aspx内的函数: 代码如下:sajax(“***.aspx/DoSave”, //一个URL地址 ,指向函数所在的ASPX null,//参数, 所指向的ASPX的函数所需要的参数 showSaveResult);//执行成功之后执行的jS脚本 2.函数 ...

    AjaxPro非常好用的Ajax开发框架

    AjaxPro是首家支持以各种方式通过javascript访问服务端.net的免费库,类似于SAJAX。它能把Javascript请求发送到.NET方法,服务端传回给Javascript,甚至包括串行化自定义类。其主要特点如下: 可以在Javascript中...

    PHP结合AJAX开发实例

    本文中我们将完全使用 PHP 和 Simple Ajax Toolkit (Sajax) 创建一个简单的相册作为在线 Web 应用程序。我们首先用标准的 PHP 开发方法编写简单的相册,然后再用 Sajax 将其变成活动的 Web 应用程序。

    Ajax 修炼之道(附源码)

    不仅教会你Ajax的技术细节,同时还带你了解各种功能强大的主流Ajax工具包(Dojo、Prototype、 Script.aculo.us、DWR、Backbase、SmartClient、Ajax.NET、SAJAX、JSON-RPC),掌握Ajax 实时查看源代码的方法以及进行...

    web 2.0入门者 Ajax修炼之道-包含源码

    不仅教会你Ajax的技术细节,同时还带你了解各种功能强大的主流Ajax工具包(Dojo、Prototype、 Script.aculo.us、DWR、Backbase、SmartClient、Ajax.NET、SAJAX、JSON-RPC),掌握Ajax 实时查看源代码的方法以及进行...

    Ajax.NET Professional v5.11.4.2

    ·象SAJAX,能把Javascript中的调用传递到.NET方法,并返回到Javascript回叫。 ·能存取来自于JavaScript的会话数据。 ·缓存结果 ·自由使用,可用的源码,未指定使用许可。由Michael Schwarz...

    ajaxpro-99885

    AjaxPro是首家支持以各种方式通过javascript访问服务端.net的免费库,类似于SAJAX。它能把Javascript请求发送到.NET方法,服务端传回给Javascript,甚至包括串行化自定义类

    PHP ajax framework

    PHP环境下的Ajax框架大全,经典值得收藏! cpaint_v2.1.0 HTML_AJAX-0.4.1&lt;br&gt;sajax-0.12&lt;br&gt;xajax_0.2.5&lt;br&gt;xoad-0.6.0.0-php5

    结合Ajax进行PHP开发1:入门

    本文将使用两种方法创建一个简单的相册:传统的Web 应用程序和基于Sajax的应用程序。我们将用PHP编写一个相册,读取某一目录中的内容,显示缩略图组成的表格。如果用户单击一个缩略图,就会完全展开该图像。因为编写...

    结合Ajax进行PHP开发,第2部分:后退、前进和刷新

    简介在浏览器中保存状态构建历史堆栈可重用的设计用cookie缓冲编写类测试类集成历史记录对象和相册结束语异步JavaScript和XML... 简介第1部分介绍了如何用Sajax、PHP和JavaScript开发基本的相册。在为应用程序

    基于jquery ajax 用户无刷新登录方法详解

    Ajax框架就是提供模块化实现Ajax功能的集合,Ajax框架可以是各种语言实现的(比如SAJAX有各种语言的实现),Ajax只是jquery中的一部分, 实例1 代码如下: $.ajax({ type:’post’,//可选get url:’action.php’,//...

    ffGallery - A Flash Free Gallery-开源

    一个简单的、可定制的、用 PHP 和 javascript 编写的网络照片库。 ffGallery 使用 SAJAX 工具包和 CSS 为用户呈现华丽的界面。

    Flexible AJAX-开源

    flxAJAX(Flexible AJAX)是PHP中AJAX技术的实现。 它是用php5-oop编写的,并允许从javascript调用已定义的php函数,类似于'sajax'中的实现,但基于oop且更灵活。

Global site tag (gtag.js) - Google Analytics