读《掌握 Ajax》

掌握 Ajax 系列:http://www.ibm.com/developerworks/cn/web/wa-ajaxintro/

说明:
1.我会引用文章原话,不当之处,敬请原谅!若违反XX法规,请通知在下。
QQ:438803482;
E-Mail:leellyp@yahoo.com.cn;我马上删掉!
2.  这个色的字体是我的读后感,若有不当,不对之处,亦请通知在下。我马上改过
开读:
第 1 部分: Ajax 简介
     gAjax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成
     gAjax 应用程序所用到的基本技术:

  • HTML 用于建立 Web 表单并确定应用程序其他部分使用的字段。
  • JavaScript 代码是运行 Ajax 应用程序的核心代码,帮助改进与服务器应用程序的通信。
  • DHTML 或 Dynamic HTML,用于动态更新表单。我们将使用 divspan 和其他动态 HTML 元素来标记 HTML。
  • 文档对象模型 DOM 用于(通过 JavaScript 代码)处理 HTML 结构和(某些情况下)服务器返回的 XML。

用户与服务器端交互,服务器的处理过程不应当让用户承担
Web表单<-------->JavaScript(XMLHttpRequest ) <---------->服务器  
       用户填写完表单后,javascript通过DOM获取用户输入的信息,也可对其进行处理,然后发送到服务器。这时的HTML页面对于用户是毫无变化发生的。当然也不会有闪烁、消失或延迟。也就是说用户可以做他任意想做的事。
       javascript通过XMLHttpRequest 获取服务器返回的数据,还是利用DOM对HTML页面进行操作,比如更新修改table的一列或增加一行等等。而这样的操作也是无刷新的!
现在问题出来了!
如何创建XMLHttpRequest对象?
XMLHttpRequest对象如何获取服务器返回的数据?
如何利用javascript操作HTML元素?

ContractedBlock.gif ExpandedBlockStart.gif 通过面向对象的概念创建了XMLHttpRequest对象,并获取服务器返回的数据
None.gif //通过面向对象的概念创建了XMLHttpRequest对象,并获取服务器返回的数据
None.gif
        function MyXmlHttp()
ExpandedBlockStart.gifContractedBlock.gif        
dot.gif{
InBlock.gif                
//属性
InBlock.gif
               this.xmlhttp;
InBlock.gif               
//方法,创建XMLHttpRequest对象,已经考虑了浏览器的兼容问题,最终返回我们需要的XMLHttpRequest对象的实例:xmlhttp
InBlock.gif
               this.createXMLHttpRequest=function()
ExpandedSubBlockStart.gifContractedSubBlock.gif               
dot.gif{
InBlock.gif                   
var xmlhttp;
InBlock.gif                   
try
ExpandedSubBlockStart.gifContractedSubBlock.gif                   
dot.gif{
InBlock.gif                       xmlhttp
=new ActiveXObject("Msxml2.XMLHTTP");
ExpandedSubBlockEnd.gif                   }

InBlock.gif                   
catch(e)
ExpandedSubBlockStart.gifContractedSubBlock.gif                   
dot.gif{
InBlock.gif                       
try
ExpandedSubBlockStart.gifContractedSubBlock.gif                       
dot.gif{
InBlock.gif                           xmlhttp
=new ActiveXObject("Microsoft.XMLHTTP");
ExpandedSubBlockEnd.gif                       }

InBlock.gif                       
catch(e)
ExpandedSubBlockStart.gifContractedSubBlock.gif                       
dot.gif{
InBlock.gif                           
try
ExpandedSubBlockStart.gifContractedSubBlock.gif                           
dot.gif{
InBlock.gif                              xmlhttp
=new XMLHttpRequest();
ExpandedSubBlockEnd.gif                           }

InBlock.gif                           
catch(e)
ExpandedSubBlockStart.gifContractedSubBlock.gif                           
dot.gif{
InBlock.gif                     
ExpandedSubBlockEnd.gif                           }

ExpandedSubBlockEnd.gif                       }

ExpandedSubBlockEnd.gif                   }

InBlock.gif                   
return xmlhttp;
ExpandedSubBlockEnd.gif               }

InBlock.gif               
//post方法获取返回的HTML页面元属
InBlock.gif
               this.postPage=function(url,params)
ExpandedSubBlockStart.gifContractedSubBlock.gif               
dot.gif{
InBlock.gif                   obj.open(
"POST",url,false);
InBlock.gif                   obj.setRequestHeader(
"cache-control","no-cache"); 
InBlock.gif                   obj.setRequestHeader(
"Content-type","application/x-www-form-urlencoded");
InBlock.gif
InBlock.gif                   obj.send(params);
InBlock.gif                   
if(obj.readyState==4)
ExpandedSubBlockStart.gifContractedSubBlock.gif                   
dot.gif{
InBlock.gif                      
return obj.responseText;
ExpandedSubBlockEnd.gif                   }

InBlock.gif                   
return "";
ExpandedSubBlockEnd.gif               }

InBlock.gif               
//get方法获取返回的HTML页面元属
InBlock.gif
               this.getPage=function(url)
ExpandedSubBlockStart.gifContractedSubBlock.gif               
dot.gif{
InBlock.gif                   obj.open(
"get",url,false);
InBlock.gif                   obj.send(
null);
InBlock.gif                   
if(obj.readyState==4)
ExpandedSubBlockStart.gifContractedSubBlock.gif                   
dot.gif{
InBlock.gif                      
return obj.responseText;
ExpandedSubBlockEnd.gif                   }

InBlock.gif                   
return "";
ExpandedSubBlockEnd.gif               }

InBlock.gif               
//获取XMLHttpRequest对象的实例obj             
InBlock.gif
               this.getXmlHttp=function()
ExpandedSubBlockStart.gifContractedSubBlock.gif               
dot.gif{
InBlock.gif                  
return obj;
ExpandedSubBlockEnd.gif               }

InBlock.gif               
//调用createXMLHttpRequest方法得到XMLHttpRequest对象返回的实例obj
InBlock.gif
               var obj=this.createXMLHttpRequest(); 
ExpandedBlockEnd.gif        }

下节我会给出Javascript操作Table的实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值