`
zhangshuling1214
  • 浏览: 5728 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

自己写的ajax简易模型

阅读更多
function  Ajax(){
    var _xmlHttp = null;
    //创建对象
    this.createXMLHttpRequest = function(){
       if (window.ActiveXObject) {                                                    
          _xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");                                      
       }else if (window.XMLHttpRequest) {                                                  
         _xmlHttp = new XMLHttpRequest();                                                
       }
    }

   //实现回调函数
    this.backFunction = function(_backFunction){
     _backFunction(_xmlHttp.responseXML);
    }
     //方法实现
    this.ajaxRequest = function(_url,_method,_backFunction){
        this.createXMLHttpRequest();
        //在每个连接后面加个随机数
        var random = Math.round(Math.random()*10000);
        _url = (_url.indexOf('?')>0)?(_url+='&random='+random):(_url+='?random='+random);
        _xmlHttp.open(_method, _url, false);
        _xmlHttp.send(null);
        _xmlHttp.onreadystatechange = this.backFunction(_backFunction);                              
     }
}


用法:
自己定义一个处理ajax 返回xml 的js方法: 例如
function backFunction(xmlObj){
  ......
}

调用
var url = "...";
var method  = "GET";
new Ajax().ajaxRequest(url,method,backFunction);
4
0
分享到:
评论
1 楼 zhangshuling1214 2009-02-25  
//======================
再次修改

function  Ajax(){
    var _xmlHttp = null;
this.createXMLHttpRequest = function(){
try{
if (window.ActiveXObject) {                                                   
_xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");                                     
}                                                                             
else if (window.XMLHttpRequest) {                                                 
_xmlHttp = new XMLHttpRequest();                                               
}
}catch(e){
   alert(e.name +" : " + e.message);
}
}

this.backFunction = function(_backFunction){
if(_xmlHttp.readyState == 4) {
if(_xmlHttp.status == 200) {
_backFunction(_xmlHttp.responseXML);
}
}
_xmlHttp.onreadystatechange = null;
}

this.doPost = function(_url,_parameter,_backFunction){
    try{
     _xmlHttp.open("POST",_url, false);
_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
_xmlHttp.send(_parameter);
}catch(e){
  alert(e.name +" : " + e.message);
    }
}

this.doGet = function(_url,_parameter,_backFunction){
   try{
       var _random = Math.round(Math.random()*10000);
       _xmlHttp.open("GET", (_url+"?random=" +_random +"&" + _parameter), false);
   _xmlHttp.send(null);
}catch(e){
    alert(e.name +" : " + e.message);
}
}

    this.ajaxRequest = function(_url,_parameter,_method,_backFunction){
          try{
            this.createXMLHttpRequest();
        if(_method.toLowerCase() == "post"){
           this.doPost(_url,_parameter,_backFunction);
        }else{
           this.doGet(_url,_parameter,_backFunction); 
        }
        try{
          _xmlHttp.onreadystatechange = this.backFunction(_backFunction);
        }catch(err){
           //不知道为什么IE在这里总会报个“类型不匹配的错误”
        }
     }catch(e){
    alert(e.name +" : " + e.message);
}
     }

}

/*
var url = "ajax.do";
var parameter = "parameter=parameter";
var method = "post"

function callBack(xml){
  ....
}

new Ajax().ajaxRequest(url,parameter,method,callBack);

*/

相关推荐

    ajax简易模型 兼容多个浏览器(ff ie ...) get post请求

    ajax简易模型 兼容多个浏览器(ff ie ...) get post请求

    自己写的最简单Ajax例子

    在"自己写的最简单Ajax例子"中,我们可以看到两个简单的实例,适合初学者入门学习。 首先,我们来详细讲解一下Ajax的核心概念: 1. 异步通信:Ajax的核心特性就是异步,这意味着在发送请求后,浏览器不会等待...

    Ajax简易网络公告演示系统(J2EE版)

    【Ajax简易网络公告演示系统(J2EE版)】是一个基于J2EE平台的Web应用程序,它巧妙地结合了Ajax、DIV+CSS3、MySQL数据库和Servlet等技术,以实现一个高效、动态且用户友好的公告展示系统。在这个系统中,Ajax...

    AJAX留言本--简易版

    【描述】"ASP+AJAX简易留言本"揭示了这个项目的两大核心组件:ASP(一种微软开发的服务器端脚本环境,常用于构建动态网页)和AJAX(Asynchronous JavaScript and XML,异步JavaScript和XML)。通过ASP,服务器能够...

    基于JSP+Ajax+MyEclipse 2015 Java聊天室软件源码+说明文档.zip

    二、项目的需求分析过程及需求模型 2.1.系统可行性分析 随着互联网的普及,聊天室这种古老的交流方式已经被众多人所认可。通过聊天时在线聊天已成为网络上人与人之间沟通、交流和联系的一种方式。为此,越来越多

    简易 Ajax 论坛

    在“简易 Ajax 论坛”项目中,我们将深入探讨如何利用 Ajax 实现一个动态更新的论坛页面。 1. **Ajax 基础** - **异步通信**:Ajax 的核心特性是异步,用户在发送请求后仍能继续浏览其他内容,而无需等待服务器...

    .Net 3.5(LINQ,AJAX) Web简易聊天室 源码

    【标题】".Net 3.5(LINQ,AJAX) Web简易聊天室 源码"中的知识点 本文将深入探讨.NET Framework 3.5中的核心技术——LINQ(Language Integrated Query)和AJAX(Asynchronous JavaScript and XML),以及它们在创建...

    ThinkPHP5简易商城

    在线聊天,通过ajax无刷新简易的实现聊天功能,简易自动回复,简易聊天表情等 留言功能,点赞功能等等 thinphp5的缓存应用,模型关联,等 增加在线安装功能 特性: 比较简单的实现商城功能,例如支付宝扫码...

    jsp+servlet+mysql写的简易购物网站系统代码

    【标题】:“jsp+servlet+mysql写的简易购物网站系统代码”是基于Java Web技术实现的一个基本的在线购物平台。这个系统结合了Java Server Pages (JSP)、Servlet和MySQL数据库,构建了一个用户友好的交互界面和后端...

    ASP.NET源码——[聊天留言]简易AJAX留言板.zip

    此“ASP.NET源码——[聊天留言]简易AJAX留言板.zip”是一个示例项目,展示了如何使用ASP.NET技术创建一个基于AJAX的聊天留言系统。AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下...

    ASP.NET源码——[聊天留言]适合ajax初学者的简易聊天程序.zip

    在这个"ASP.NET源码——[聊天留言]适合ajax初学者的简易聊天程序.zip"中,我们有一个特别针对AJAX初学者设计的简单聊天应用。 AJAX,全称Asynchronous JavaScript and XML(异步JavaScript和XML),是一种在无需...

    ASP.NET-[聊天留言]适合ajax初学者的简易聊天程序v1.0.zip

    这个压缩包"ASP.NET-[聊天留言]适合ajax初学者的简易聊天程序v1.0.zip"显然包含了一个专为AJAX(Asynchronous JavaScript and XML)初学者设计的简单聊天程序。AJAX是一种在无需刷新整个网页的情况下,能够更新部分...

    NChat简易聊天室源码(.Net 3.5,LINQ,AJAX)

    【NChat简易聊天室源码】是一个基于.Net 3.5框架、利用LINQ查询语言以及AJAX异步技术开发的在线交流平台。这个项目旨在为开发者提供一个基础的聊天室实现,帮助他们理解Web应用中的实时通信机制,以及如何在.NET环境...

    [聊天留言]NChat简易聊天室(.Net 3.5,LINQ,AJAX)_nchart(ASP.NET源码).rar

    【NChat简易聊天室】是一个基于ASP.NET技术构建的在线聊天应用,主要利用了.Net 3.5框架、LINQ查询语言以及AJAX异步更新技术。这个项目为我们提供了深入理解这些技术及其在实际开发中的应用的一个实例。下面将详细...

    ajax初学者教程 PPT格式

    3. **提供连续的交互**:与传统的客户端-服务器模型相比,Ajax提供了一种类似桌面应用程序的交互体验,用户可以进行多个操作而无需等待每个操作的结果,这样就提高了效率,降低了用户的等待感。 4. **兼容性和标准*...

    javaweb简易聊天室程序

    总的来说,"javaweb简易聊天室程序"是一个涵盖了JavaWeb基础技术的实战项目,包括Servlet、JSP、JavaBean、数据库连接以及可能的AJAX技术。通过学习和实践这个项目,初学者可以深入理解Web开发的流程,提升自己的...

    简易电子菜单(含数据库mongo)

    在本项目"简易电子菜单(含数据库mongo)"中,主要涉及了三个核心技术:Ajax、MongoDB数据库以及前后台交互。以下将详细介绍这些技术及其在项目中的应用。 MongoDB是一个开源、分布式、非关系型数据库系统,它采用...

    基于AJAX的教学Web应用

    文章进一步介绍了一种简易的AJAX开发框架,并通过实例展示了该框架的应用。 #### 关键词 AJAX、JavaScript、DOM、XMLHttpRequest、Web应用 #### 引言 随着互联网技术的发展与普及,Web平台上的教学资源日益丰富,...

    ajax 基础(入门学习者)

    在本教程中,我们将深入探讨Ajax的基础知识,包括如何创建一个简易留言板、验证表单、弹出提示以及模拟Excel表格的功能。 ### 1. Ajax基础概念 Ajax的核心是通过JavaScript与服务器进行异步通信。它利用...

Global site tag (gtag.js) - Google Analytics