Ajax封装方法

/*
调用方法
setInterval(function(){
    ajax('get','json_php_html.php','',function(data){
    data = JSON.parse(data);
    html='';
    for ( var i = 0; i<data.length; i++) {
        html += '<li>'+data[i].title+'[<span>'+data[i].date+'</span>]</li>'
        };
    $u1.innerHTML = html;
    })
},1000);
 
var url = 'board_verify_password.php';
var data = 'username='+oUsername1.value+'&password='+oPassword1.value;  
ajax('post', url, data, function(data) {
            var d = JSON.parse(data);
        alert(d.message);
             
        if (!d.code) {
            var $data = oList.innerHTML;              
            oList.innerHTML = da + $data;
}
 
var url = 'board_verify_loginout.php';
ajax('get', url, '', function(data) {
    var d = JSON.parse(data);
    alert(d.message);
         
    if (!d.code) {
            //退出成功
        updateUserStatus();
    }
}
*/
 
 
 
function ajax(method, url, data, success) {
    var xhr = null;
    try {
        xhr = new XMLHttpRequest();
    catch (e) {
        xhr = new ActiveXObject('Microsoft.XMLHTTP');
    }
     
    if (method == 'get' && data) {
        url += '?' + data;
    }
     
    xhr.open(method,url,true);
    if (method == 'get') {
        xhr.send();
    else {
        xhr.setRequestHeader('content-type''application/x-www-form-urlencoded');
        xhr.send(data);
    }
     
    xhr.onreadystatechange = function() {
         
        if ( xhr.readyState == 4 ) {
            if ( xhr.status == 200 ) {
                success && success(xhr.responseText);
            else {
                alert('出错了,Err:' + xhr.status);
            }
        }
         
    }
}

 

posted on 2016-12-23 17:29  炊厨  阅读(124)  评论(0)    收藏  举报

导航