本帖最后由 withered_bamboo 于 2011-05-05 10:35:17 编辑

解决方案 »

  1.   

    未将对象引用设置到对象的实例。你的代码中,某个对象为null了
    你应该
    if(xx != null)
    {
    执行你的代码
    }
      

  2.   

    Request URL: http://Management/ajax/common.ashx
      

  3.   

    i can do nothing   
    i am sorry   
      

  4.   

    那你在每个事件中加上异常 try catch            抛出异常,就知道什么位置出错了!
      

  5.   

    这是common.ashx的内容var requests = new Array();if(typeof(XMLHttpRequest) == 'undefined')
    var XMLHttpRequest = function()
    {
    var request = null;
    try
    {
    request = new ActiveXObject('Msxml2.XMLHTTP');
    }
    catch(e)
    {
    try
    {
    request = new ActiveXObject('Microsoft.XMLHTTP');
    }
    catch(ee)
    {}
    }
    return request;
    }function ajax_stop()
    {
    for(var i=0; i<requests.length; i++)
    {
    if(requests[i] != null)
    requests[i].abort();
    }
    }function ajax_create_request(context)
    {
    for(var i=0; i<requests.length; i++)
    {
    if(requests[i].readyState == 4)
    {
    requests[i].abort();
    requests[i].context = context;
    return requests[i];
    }
    }var pos = requests.length;requests[pos] = Object();
    requests[pos].obj = new XMLHttpRequest();
    requests[pos].context = context;return requests[pos];
    }function ajax_request(url, data, callback, context)
    {
    var request = ajax_create_request(context);
    var async = typeof(callback) == 'function';if(async) request.obj.onreadystatechange = function()
    {
    if(request.obj.readyState == 4)
    callback(new ajax_response(request));
    }request.obj.open('POST', url, async);
    request.obj.send(data);if(!async)
    return new ajax_response(request);
    }function ajax_response(request)
    {
    this.request = request.obj;
    this.error = null;
    this.value = null;
    this.context = request.context;if(request.obj.status == 200)
    {
    try
    {
    this.value = object_from_json(request);if(this.value && this.value.error)
    {
    this.error = this.value.error;
    this.value = null;
    }
    }
    catch(e)
    {
    this.error = new ajax_error(e.name, e.description, e.number);
    }
    }
    else
    {
    this.error = new ajax_error('HTTP request failed with status: ' + request.obj.status, request.obj.status);
    }return this;
    }function enc(s)
    {
    return s.toString().replace(/\%/g, "%26").replace(/=/g, "%3D");
    }function object_from_json(request)
    {
    if(request.obj.responseXML != null && request.obj.responseXML.xml != null && request.obj.responseXML.xml != '')
    return request.obj.responseXML;var r = null;
    eval('r=' + request.obj.responseText + ';');
    return r;
    }function ajax_error(name, description, number)
    {
    this.name = name;
    this.description = description;
    this.number = number;return this;
    }ajax_error.prototype.toString = function()
    {
    return this.name + " " + this.description;
    }function json_from_object(o)
    {
    if(o == null)
    return 'null';switch(typeof(o))
    {
    case 'object':
    if(o.constructor == Array) // checks if it is an array [,,,]
    {
    var s = '';
    for(var i=0; i<o.length; ++i)
    {
    s += json_from_object(o[i]);if(i < o.length -1)
    s += ',';
    }return '[' + s + ']';
    }
    break;
    case 'string':
    return '"' + o.replace(/(["\\])/g, '\\$1') + '"';
    default:
    return String(o);
    }
    }var ajaxVersion = '5.7.22.2';