首页 兼容ie7到ie11,edge,chrome,firefox的ajax发送接收post数据代码
文章
取消

兼容ie7到ie11,edge,chrome,firefox的ajax发送接收post数据代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
/*
 * 生成XMLHttpRequest
 */
function getxhr()
{
    //获取ajax对象
    var xhr = null;
    try
    {
        xhr = new XDomainRequest();
    }
    catch(e)
    {
        try
        {
            xhr = new XMLHttpRequest();
        }
        catch(e)
        {
            try
            {
                xhr = new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch(e)
            {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
        }
    }
    return xhr;
}

/*
 * 获取cookieName值
 */
function getCookie(cookieName)
{
    var cookieArr = document.cookie.split("; ");
    var length  = cookieArr.length;
    for(var i=0;i<length;i++)
    {
        var tmpArr = cookieArr[i].split("=");
        if(tmpArr[0]==cookieName)
        {
            return tmpArr[1];
        }
    }
    return '';
}

/*
 * 拼装cookie POST数据
 */
function getCookieData()
{
    var sessionid = getCookie('PHPSESSID');
var user_name= getCookie('user_name');
if(sessionid == '' || user_name == '')
    {
        return false;
    }
    var postData = {
        'sessionid':sessionid,
        'user_name':user_name
    };
    return postData;
}

/*
 * ajax通信
 */
function submitCookieTopForm()
{
    var xhr = getxhr();
    if (!xhr)
    {
        alert("您的浏览器不支持AJAX!");
        return false;
    }
    //设置ajax数据
    var url = "http://你的url";
    //set post
    var formData = getCookieData();
    if (false == formData)
    {
        return false;
    }
    var postData = JSON.stringify(formData);

    //开始ajax
    /********ie 8,9兼容***********/
    try
    {
        if( xhr instanceof XDomainRequest)
        {
            xhr.open("post",url);
            xhr.timeout = 10000;
            xhr.onprogress = function() { };
            xhr.onerror = function () { };
            xhr.ontimeout = function () {};
            xhr.onload = function() {
                try
                {
                    var response = JSON.parse(xhr.responseText);
                    //返回成功
                }
                catch (e)
                {
                    return false;
                    //alert("服务器出错");
                }
            }
            xhr.send(postData);
            return false;
        }
    }
    catch(e)
    {
        //pass
    }
/********ie 8,9兼容结束***********/

    xhr.open("POST",url,true);
    xhr.setRequestHeader("Content-Type","application/json;charset=utf-8");
    xhr.open("POST",url,true);
    xhr.setRequestHeader("Content-Type","application/json;charset=utf-8");
    xhr.onreadystatechange = function(){
        if (xhr.readyState == 4)
        {
            if (xhr.status == 200)
            {
                //显示错误信息
                try
                {
                    var response = JSON.parse(xhr.responseText);
                    //返回成功
                }
                catch (e)
                {
                    //alert("服务器出错");
                }
            }
            else
            {
                //alert("网络错误");
            }
        }
    }
    xhr.send(postData);
    return false;
}


submitCookieTopForm();
知识共享许可协议 本文由作者按照 CC BY-SA 4.0 进行授权