Spiga

gineGrid-通用ajax类(集成跨域访问).

2007-03-06 20:48 by 梁逸晨, 3416 visits, 收藏, 编辑


2007年10月28日注: 已经有新版本(2.0),请见:
http://www.cnblogs.com/kvspas/archive/2007/10/29/940864.html




程序创建于2007年2月,目的是给各位使用AJAX的朋友提供一个方便。同时相互交流经验。

使用办法非常简单:
同步函数(url地址,可选的POST参数)
异步对象(回调函数,url地址,可选的POST参数)

您可以任意散布、传播和复制程序代码,并且可以直接免费使用在任意用途。但是出于对作者的尊重,请保留代码中的注释信息,
无论是客户端还是服务端,注释信息都不会影响程序的执行效率。
并且在您觉得有更好的方案可以改进代码质量的时候,请发一份给我,由我来进行修改,然后统一发布更新。

2007-02-28  梁逸晨

我的信箱 kvspas@gmail.com  QQ:2090913  MSN: ddsksworks@hotmail.com

下载程序

直接查看完整的说明文档 (PDF)

下面是使用说明:



关于运行测试文件:

首先请确保您将所需的文件都保存在WEB服务器上,并且可以通过URL地址访问到它们。
您必须通过标准的URL地址访问它们,才能够使程序得到正确运行,
例如 http://localhost/test.html    http://127.0.0.1/test.html   http://www.abc.com/test.html
您不能使用本机资源路径的方式来打开它们,否则程序不会正确执行。
例如 d:\test.html   d:\test\test.html   这两种方法都是错误的。



如何在您的项目中使用它们


首先,加载代码: ginegrid_stl.js. (一般情况下您不需要关心它是怎么执行的。您只要加载它即可)
创建对象:  var s = new gineGrid();

然后即可使用四种基本功能: 同步获取文本(ajaxT)、同步获取XML对象(ajaxX)、异步获取文本(eAT)、异步获取XML对象(eAX)。

同步获取文本:s.ajaxT("文本数据的地址"[,可选的post参数])
例:
     var txt = s.ajaxT("tt.asp"); //GET
     alert(txt);

     var pxt = s.ajaxT("tt.asp","p1=12&p2=345"); //POST
     alert(pxt);

同步获取XML对象:s.ajaxX("XML数据的地址"[,可选的post参数])
例:
     var dom = s.ajaxX("xml.asp"); //GET

     //dom即是一个XML Document 对象。
     //获取对象后的操作,省略。

     var pdom = s.ajaxX("xml.asp","p1=12&p2=345"); //POST

     //dom即是一个XML Document 对象。
     //获取对象后的操作,省略。

------------------------------------------------------------------------------------------------

异步模式关系到一个结果变量:ajaxGLOBAL,所有获取的结果都保存在这个变量中。


异步获取文本:s.eAT(回调函数,"文本数据的地址"[,可选的post参数])
例:

GET方式:
    eAT(
 
           function(){alert(ajaxGLOBAL);} //回调函数
           ,
           "tt.asp"  //文本数据地址。

          );

POST方式:
     eAT(
 
           function(){alert(ajaxGLOBAL);} //回调函数
           ,
           "tt.asp"  //文本数据地址。
           ,
           "p1=12&p2=345"  
     );


异步获取XML对象:s.eAX(回调函数,"XML数据的地址"[,可选的post参数])
例:

GET方式:

     eAX(
 
           function(){alert(ajaxGLOBAL);} //回调函数,此时ajaxGLOBAL是一个XML-Document对象,如何处理就看各人所需了。
           ,
           "xml.asp"  //XML数据地址 
     );



POST方式:

     eAX(
 
           function(){alert(ajaxGLOBAL);} //回调函数,此时ajaxGLOBAL是一个XML-Document对象,如何处理就看各人所需了。
           ,
           "xml.asp"  //XML数据地址。
           ,
           "p1=12&p2=345"   
     );



 

当需要访问跨域数据的时候,只要在数据源地址中填写绝对地址即可。(包含有"http://")。服务端代理提供了两种办法,asp程序和aspx程序。
修改ginegrid.xml文件中的参数即可设置使用哪一种代理。您也可以自己创建php和jsp,cgi代理,只要使文件名前缀保持一致即可,然后在ginegrid.xml中修改后缀。



 
最后简单回顾:四个函数的用法其实都是一样的,您可以这么简要记忆:

1  同步函数(url地址,可选的POST参数)
2  异步函数(回调函数,url地址,可选的POST参数)



参考文档:

关于Ajax 来自IBM的详细解释.

基于Ajax的应用程序架构汇总 来自蓝色理想



下载程序

直接查看完整的说明文档 (PDF)

如果您有更好的建议和方案,欢迎与我交流: 

2007 - 02 -28   kvspas@gmail.com  http://www.fssfans.com/difis/ks  QQ:2090913  MSN:ddsksworks@hotmail.com  梁逸晨