`
shuaigg.babysky
  • 浏览: 571063 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

js ajax 函数

 
阅读更多

<script>

    var ajax = (function() {

 

        var parseParam = function(origin , target) {

            origin = origin || {};

            target = target || {};

            var obj = {};

            for(var key in origin) {

                if(target[key]) {

                    obj[key] = target[key];

                } else {

                    obj[key] = origin[key];

                }

            }

            return obj;

        };

 

        var getXhr = function() {

           var _xhr = false;

           try {

               _xhr = new XMLHttpRequest();

           } catch(ms) {

               try {

                   _xhr = new ActiveXObject("Msxml2.XMLHTTP");

               } catch(otherms) {

                   try {

                      _xhr = new ActiveXObject("MICROSOFT.XMLHTTP");    

                   } catch(failed) {

 

                   }

               }

           }

           return _xhr;         

        };

 

        var jsonToQuery = function(jsonObj) {

            var result = [];

            for(var key in jsonObj) {

                result.push(key + "=" + jsonObj[key]);

            }

            return result.join('&');

        };

 

        /*

         *      {

         *          url :

         *          args : 

         *          method : 

         *          complete : 

         *      } 

         */

        var funcEmpty = function() {};

        return function(opts) {

 

            opts = parseParam({

                type : "json",

                url : "",

                args : {},

                method : "get",

                complete : funcEmpty                

            } , opts);

 

            console.log(opts.url);

 

            var xhr = getXhr();

 

            var url = opts.url;

 

            var query = jsonToQuery(opts.args);

 

            var cback = function() {

 

                if(xhr.readyState === 4) {

                    if(opts.type === 'json') {

                        var obj = eval('(' + xhr.responseText + ')');

                        opts.complete(obj);

                    } else {

                        var result = xhr.responseXML;

                        opts.complete(result);

                    }

                }

            };

 

            xhr.onreadystatechange = cback;

 

 

            var setHeader = function() {

                try {

                    xhr.setRequestHeader('Content-Type' , 'application/x-www-form-urlencoded');

                    xhr.setRequestHeader('X-Requested-With' , 'XMLHttpRequest');

                } catch(e){

 

                }

            };

 

            if(opts.method === 'get') {

                url = url + (url.indexOf('?') == -1 ? '?' : "&") + query;

                xhr.open("get" , url , true);

                setHeader();

                xhr.send(null); 

            } else {

                xhr.open("post" , url , true);

                setHeader();

                xhr.send(query);

            }

        };

    })();

 

 

    ajax({

       url : "/php/test/ajax.php",

       method : "post",

       args : {

           a : 1,

           b : 2,

           c : 3

       },

       complete : function(json) {

          console.log(json);

       }

    });

 

 

</script>

分享到:
评论

相关推荐

    JS封装的AJAX函数

    这里提到的"JS封装的AJAX函数"是将AJAX的基本操作整合到一个或多个JavaScript函数中,以便开发者可以更方便地调用和使用。下面我们将详细探讨AJAX的基本概念、工作原理以及封装后的使用方法。 首先,AJAX的核心是...

    js实现ajax通用函数

    在JavaScript中,我们可以创建一个对象来封装常见的Ajax操作,从而实现一个通用的Ajax函数,减少重复代码,提高代码复用性。下面我们将详细介绍如何定义这样一个通用的Ajax函数。 首先,我们需要创建一个名为`...

    详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON()

    在深入探讨Jquery中的Ajax函数之前,我们先简要了解Ajax(Asynchronous JavaScript and XML)的概念。Ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这使得Web应用程序可以更加流畅地运行,...

    ajax手写 ajax 函数 js文件1.JS

    ajax手写 ajax 函数 js文件

    很实用的ajax函数

    很实用的ajax函数 纯js编写 调用方式: $get('/checkUserName/?userName=mzoe', function(str) { alert(str); }); $post('/checkUserName/', 'userName=mzoe', function(str) { alert(str); });

    jQuery实现的Ajax函数(已测试)——ASP

    **jQuery实现的Ajax函数在ASP中的应用** Ajax(异步JavaScript和XML)技术允许网页在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容,显著提升了用户体验。jQuery库简化了JavaScript的Ajax操作,...

    原生js+ajax通用函数+php

    本函数封装了js的ajax,php为处理后台数据,仅支持post,代码很简洁

    ajax通用函数,兼容市面所有浏览器,纯javascript实现

    }这个通用 `ajax` 函数通过使用 JavaScript 实现了一个跨浏览器的 AJAX 请求。它首先检查是否支持 `ActiveXObject`(针对旧版 Internet Explorer)或 `XMLHttpRequest` 对象。然后,它会初始化一个请求,设置请求...

    JQuery各Ajax函数说明

    ### JQuery中的Ajax函数详解 #### 一、$.get() **函数定义**: ```javascript $.get(url, [data], [callback]) ``` **说明**: `$.get()` 是 jQuery 提供的一个用于发起 GET 请求的简便函数。它允许你向服务器...

    AJAX函数库

    自己整合的一个AJAX函数库,从此让你的AJAX开发简单方便. 调用方法: &lt;script type="text/javascript" src="ajax.js"&gt; &lt;div id="mydiv"&gt;&lt;/div&gt; &lt;script type="text/javascript"&gt; function myFun(){ loading('正在...

    ajax库函数

    简单好用的ajax库函数,js代码,只有6K大小,可以代替JQuery中几M的函数库. 调用方法: ajaxSendGet('返回函数名', '访问的URL'); ajaxSendPost('返回函数名', '访问的URL', 'POST提交的参数内容'); 返回函数: function...

    在vb.net (asp.net)中后台引用ajax函数的方法

    本文将详细介绍如何在后台引用AJAX函数,以VS2010 (VB.NET)作为开发工具,SQL Server 2000作为数据库进行演示。 首先,我们需要在项目中引入AJAX库。步骤S1涉及在项目中添加对`ajax.dll`的引用。这可以通过右键点击...

    最新ajax常用的函数大全

    在本篇文章中,我们将深入探讨一些常用的AJAX函数,以帮助开发者更有效地实现动态网页交互。 首先,创建XMLHttpRequest对象是AJAX的基础。XMLHttpRequest对象是JavaScript中用于实现异步通信的核心对象。以下是一个...

    javascript通过Ajax直接调用任意PHP函数多参数例程

    javascript通过Ajax直接调用任意PHP函数多参数例程 菜农在网友指点下完成此例程,非常感谢!!! 雁塔菜农HotPower@163.com 2018.6.20于西安雁塔菜地 测试网址:http://www.hotpage.com.cn/phptest/HotFunction.html

    AJAX 请求完成时执行函数。Ajax 事件。

    在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种创建动态网页的技术,它允许我们在不刷新整个页面的情况下与服务器交换数据并更新部分网页内容。在AJAX请求中,事件处理是非常关键的一部分,它允许我们...

    一个通过ajax+js技术实现的客户端函数动态执行服务器端后台函数

    "一个通过ajax+js技术实现的客户端函数动态执行服务器端后台函数" 这个标题表明我们讨论的是一个使用AJAX(异步JavaScript和XML)和JavaScript技术来实现在客户端动态调用服务器端函数的解决方案。在Web应用开发中,...

    js Ajax的实例

    ### JavaScript AJAX 实例详解 #### 一、引言 AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使得网页可以实现...

    ajax和js的web开发

    `jscript5.chm`可能是一份关于JavaScript 5.0的参考手册,涵盖了JavaScript的基本语法、函数、对象、事件处理等方面的内容,对于理解JavaScript的运作机制非常有帮助。学习这个手册,开发者可以深入理解如何利用...

    AJAX 载入JS文件,载入CSS文件,载入JS函数,执行JS

    本文将详细介绍如何利用AJAX在ASP(Active Server Pages)应用中实现动态加载JavaScript文件、CSS文件以及执行JavaScript函数等功能。 #### 二、基础知识 在开始之前,我们需要了解几个基础概念: - **AJAX**:异步...

    jquery AJAX 回调函数取JSON成功代码

    AJAX(Asynchronous JavaScript and XML)技术允许我们在不刷新整个页面的情况下与服务器进行异步通信,极大地提升了用户体验。在这个场景中,我们讨论的是如何使用jQuery的AJAX方法来获取并处理JSON格式的数据。 ...

Global site tag (gtag.js) - Google Analytics