zoukankan      html  css  js  c++  java
  • ajax核心代码(转载)

    以下代码是经过本人大量实验,结合他人资料总结出来一段ajax核心代码,比较灵活,传参可以用POST和GET,可以返回TEXT和XML
    <script language="javascript">
    // JavaScript Document
    var http_request = false;
    //发送请求,第一个参数为目的地址,第二个参数为请求方法只有"GET"、"POST"
    //第三个参数为需要传送的参数列表key1=value1&key2=value2
    //第四个参数为响应信息类型只能为"TEXT"或"XML"
    function send_request(url,method,params,responseType)
    {//初始化、指定处理函数、发送请求的函数
    http_request = false;
    //开始初始化XMLHttpRequest对象
    if(window.XMLHttpRequest) 
    { //Mozilla 浏览器
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) 
    {//设置MiME类别
    http_request.overrideMimeType('text/xml');
    }
    }
    else if (window.ActiveXObject) 
    { // IE浏览器
    try 
    {
    http_request = new ActiveXObject("Msxml2.XMLHTTP");

    catch (e) 
    {
    try 
    {
    http_request = new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch (e) 
    {}
    }
    }
    if (!http_request) 
    { // 异常,创建对象实例失败
    window.alert("不能创建XMLHttpRequest对象实例.");
    return false;
    }
    http_request.onreadystatechange = function(){processRequest(responseType)};
    if (method=="GET")
    {
    // 确定发送请求的方式和URL以及是否同步执行下段代码
    http_request.open(method, url+"?"+params, true);
    http_request.send(null);
    }
    else if(method=="POST")
    {
    http_request.open(method, url, true);
    http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    http_request.send(params);
    }
    else 
    {
    alert("无效的method!method只能为:GET或POST");
    }
    }

    // 处理返回信息的函数
    function processRequest(responseType)
    {
            if (http_request.readyState == 4)
    { // 判断对象状态
                if (http_request.status == 200) 
    { // 信息已经成功返回,开始处理信息

    if (responseType=="TEXT")
    {
                    alert(http_request.responseText);
    }
    else if(responseType=="XML")
    {
    alert(http_request.responseXML);
    }
    else
    {
    alert("无效的响应信息类型!只能为:TEXT或XML");
    }

    /*
    alert(http_request.responseText);
    */

                } 
    else 
    { //页面不正常
                    alert("您所请求的页面有异常。");
                }
            }
    }

    function userCheck() 
    {
    alert("a");
    send_request('postback.asp',"POST","name=arlang","TEXT");
    alert("b");
    }
    </script>


    ---------------------------------------------------------------------------------------------------------------------------------
    copyright:http://www.cnblogs.com/anee/
  • 相关阅读:
    基础总结篇之一:Activity生命周期
    浅析Android中的消息机制
    详解Android中AsyncTask的使用
    URLConnection的连接、超时、关闭用法总结
    使用Open Flash Chart(OFC)制作图表(Struts2处理)
    用dTree组件生成无限级导航树
    jQuery插件Jeditable的使用(Struts2处理)
    Python Day 56 Django框架学习、学生管理系统迭代二、前后端交互数据传输方式、前台两种跳转方式、form表单详解
    Python Day 55 Django框架、利用学生管理系统来学习Django框架 (版本一)、数据库封装成类、单表操作新url方式、模态对话框
    Python Day 54 Django框架、web请求流程、状态码、自定义web框架
  • 原文地址:https://www.cnblogs.com/anee/p/2675940.html
Copyright © 2011-2022 走看看