Ajax 及其入门基础(2)

2016-02-19 16:57 9 1 收藏

有了下面这个Ajax 及其入门基础(2)教程,不懂Ajax 及其入门基础(2)的也能装懂了,赶紧get起来装逼一下吧!

【 tulaoshi.com - Web开发 】

四、常见Ajax编程框架

既然上述Ajax框架已经能工作了,为什么还有那么多的框架呢?

随着页面的复杂,可能需要书写大量的Javascript脚本来对页面中的DOM对象进行控制,工作量和复杂度会大大增加。Ajax编程框架通常利用面向对象的方法,对一些基本的对象和行为及其复杂性进行了合理的封装,建造了一套有自己特色的类库,并且考虑了效率和可扩充性等优点。我们在开发时,可以使用较少的、更清晰的代码,完成自己的工作。也使程序员有更多的时间和精力考虑业务逻辑本身,而不是与一堆脚本纠缠在一起。

框架都是与后台脚本相关的。通过后台脚本编程,我们可以不必书写大量的Javascript脚本就能构建浏览器兼容的Ajax应用。

比如,我使用一个比较流行的PHP xAjax框架,对前边的示例程序进行了改写:

?php
require_once (”../xajax/xajax.inc.php”);

//服务器处理函数
function processForm(aFormValues)
{
objResponse = new xajaxResponse();
bError = false;

//清空错误信息
objResponse-addClear(”usernameInfo”, “innerHTML”);

//判断账号
if (trim(aFormValues[’username’]) == “”)
{
objResponse-addAppend(”usernameInfo”, “innerHTML”, “Please Input user name.”);
bError = true;
}
else
{
if(trim(aFormValues[’username’])==”Thomas”)
objResponse-addAppend(”usernameInfo”, “innerHTML”, “Has been registed”);
else
objResponse-addAppend(”usernameInfo”, “innerHTML”, “Has not been registed”);
bError = false;
}

if (!bError)
{
sForm .=”div账号:” .aFormValues[’username’]. “/divn”;
}
else
{
objResponse-addAssign(”submitButton”, “value”, “Submit”);
objResponse-addAssign(”submitButton”, “disabled”, false);
}

return objResponse;
}

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

//构造对象
xajax = new xajax();

//注册处理函数
xajax-registerFunction(”processForm”);

//接管HTTP请求
xajax-processRequests();

!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“
html
head
meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″
?php
//生成必要的JavaScript
xajax-printJavascript(’../xajax/’);

titleXAJAX 用户注册/title
style type=”text/css”
#formWrapper{ color: #111111; background-color: rgb(200,200,200); width: 360px;}
#title{color: #FFFFFF; text-align: center; background-color: #000000; }
#formDiv{ padding: 20px;}
.submitDiv{ margin-top: 10px; text-align: center; }
.errorSpan{ color:red;}
/style

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

script type=”text/javascript”
!–//提交表单
function submitSignup()
{
xajax.(’submitButton’).disabled=true;
xajax.(’submitButton’).value=”验证中…”;
xajax_processForm(xajax.getFormValues(”signupForm”));
return false;
}
//–
/script

/head

body

form id=”signupForm” action=”javascript:void(null);” onsubmit=”submitSignup();”
用户名:input type=”text” name=”username” value=”" 
input type=”button” name=”check” value=”Check Only one” onClick=”submitSignup();”
input type=”submit” id=”submitButton” name=”submit” value=”Submit”
/form

div id=”usernameInfo” class=”errorSpan” /div

/body
/html

大家看到了这段代码前边的包含语句了吧:require_once (”../xajax/xajax.inc.php”)。xajax.inc.php就是定义xajax等相关类库的文件,这个文件里还包含了大量的javascript脚本文件和其他的常数定义等。Xajax类有一条自己的属性和方法,接管和封装了原始的Ajax的行为和方法,用于处理用户的事件和页面文档对象的属性和外观。

Ajax框架有它自己的好处,但是,目前由于Ajax框架太多,各有各的优点和缺点,特别是对PHP语言,我们很难在众多的框架中选中一个最适合我们自己的项目的框架。框架太多加大了交流的成本。框架本身在降低了代码复杂度的同时,也带来了学习的成本。不像.NET,背靠财大气粗的公司,就一套程序库,一套通用的IDE,熟练一门语言(比如C#),就可以开发Web和桌面应用。

最后还要注意一下,Ajax并不是万金油,任何项目都想用一下。Ajax目前大多数应用在数据校验等应用上,在项目中用的时候请慎重考虑。

来源:http://www.tulaoshi.com/n/20160219/1613670.html

延伸阅读
标签: Web开发
基于XML的异步JavaScript,简称AJAX,是当前Web创新(称为Web2.0)中的一个王冠。感谢组成AJAX的各种技术,Web应用的交互如Flickr, Backpack和Google在这方面已经有质的飞跃。这个术语源自描述从基于网页的Web应用到基于数据的应用的转换。在基于数据的应用中,用户需求的数据如联系人列表,可以从独立于实际网页的服务端取得并且可以被动态...
标签: Web开发
AjaxTags项目是在现有的Struts HTML标记库的基础上,添加对AJAX支持。 AjaxTags改写了Struts标签类org.apache.struts.taglib.html.FormTag和org.apache.struts.taglib.html.BaseHandlerTag,并使用Struts的plugin技术,使得Struts提供了对AJAX的支持。 以下是JSP中简单的示例: <html:form action="example1" ajaxRef="example1"> Firs...
标签: Web开发
静态页面 代码如下: !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" html xmlns="http://www.w3.org/1999/xhtml" head title无标题页/title script type="text/javascript" src="jquery/jquery.js" //这里不可以用script type="" src="" / /script sc...
摄影基础入门   说到摄影我必须先提到两个人。 阿尔弗雷德斯蒂格里茨,他被尊称为现代摄影之父,是一位身兼各派的全才摄影家。他早期曾是画意派摄影高手,后又成为纯粹主义摄影的倡导者和写实摄影的先驱者。 亨利卡蒂埃布列松,世界著名的人文摄影家,决定性瞬间理论的创立者与实践者。被誉为现代新闻摄影之父。 正...
标签: Web开发
1.创建 XMLHttpRequest 对象 现在的浏览器有很多种,创建 XMLHttpRequest 的方法也不相同,所以为了兼容各种浏览器,在创建 XMLHttpRequest 时也应该考虑到各种浏览器的情况。目前主流的浏览器在Windows下有IE、Firefox及Opera,所以我们写的代码要尽量兼容这几个浏览器。在参考了一些资料后,我用下面的方法来创建 XMLHttpRequest 对象: CO...

经验教程

621

收藏

51
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部