responseType in $.ajax

13,755

Are you expecting a JSON return? What happens when you try:

$.ajax({
  type: "POST",
  url: "bla",
  dataType: 'xml',
}).done(function (response) {
   console.log(response);
});

If you look at jQuery's documentation, they outline how:

The jQuery XMLHttpRequest (jqXHR) object returned by $.ajax() as of jQuery 1.5 is a superset of the browser's native XMLHttpRequest object. For example, it contains responseText and responseXML properties, as well as a getResponseHeader() method.

The response variable therefore contains what you need. To see its structure, do a console.log() and go to the 'Console' tab in your Developer Tools (Chrome) or Firebug (Firefox).

Share:
13,755
Luaox
Author by

Luaox

Updated on June 14, 2022

Comments

  • Luaox
    Luaox about 2 years
    $.ajax({
       type: "POST",
       url: "bla",
       xhrFields: { responseType: "document" },
       data: {},
       success: function(arg,arg2,request){
          console.log(request.responseXML)
       }
    })
    

    Why is it printing 'undefined'? How would I fix this?