2010-03-15 10 views
9

Necesito obtener un valor de otra página. Pero obtengo este error con el siguiente código. ¿Cómo puedo arreglarlo?getResponseHeader no es una función

$(document).ready(function() { 
     $("[name='submit']").click(function() { 
      $.ajax({ 
       type: "POST", 
       data: $(".form-signup").serialize(), 
       url: "external.asp", 
       success: function(output) { 
       alert(output.getResponseHeader("Content-Length")); 
}, 
       error: function(output) { 
       $('.sysMsg').html(output); 
       } 
      }); 
     }); 
    }); 

Respuesta

17

En primer lugar, la configuración de objeto no está bien formada, la función success no está terminada.

Editar: Parece que está utilizando jQuery 1.3.x, si es así, la función $.ajax sí devuelve el objeto XHR:

$(document).ready(function() { 
    $("[name='submit']").click(function() { 
     var xhr = $.ajax({ 
      type: "POST", 
      data: $(".form-signup").serialize(), 
      url: "external.asp", 
      success: function(output, status) { 
       alert(xhr.getResponseHeader("Content-Length")); 
      }, 
      error: function(output) { 
       $('.sysMsg').html(output); 
      } 
     }); 
    }); 
}); 

para jQuery 1.4+ versiones:

Entonces, cuando la devolución de llamada success se pasan sus tres argumentos ejecutados (success(data, textStatus, XMLHttpRequest)), debe llamar al getResponseHeader en el objeto XmlHttpRequest, el tercer argumento:

$(document).ready(function() { 
    $("[name='submit']").click(function() { 
     $.ajax({ 
      type: "POST", 
      data: $(".form-signup").serialize(), 
      url: "external.asp", 
      success: function(output, status, xhr) { 
       alert(xhr.getResponseHeader("Content-Length")); 
      }, 
      error: function(output) { 
       $('.sysMsg').html(output); 
      } 
     }); 
    }); 
}); 
+0

obtengo xhr no se ha definido el error. – zurna

+0

Todavía obtengo xhr no se ha definido el error. – zurna

+0

Ok, pensé por qué no funcionó para mí. Todavía estaba usando jquery 1.3.2 – zurna