JSONP - get data on error

I'm trying to misuse jsonp to bypass same-origin policies. The opposing server does not support jsonp, so obviously the call fails:

SyntaxError: expected expression, got '<'

However, looking at the console I noticed that jQuery still builds the correct url and loads the correct url and gets a valid response. How can I grab this response despite getting an error, thus never reaching the success state?

I've tried to add a error state and a fail handler, but in both cases there is simply no response data:

$.ajax({
    type: "GET",
    url: 'https://example.com/',
    data:{"q":"test"},
    async:true,
    dataType : 'jsonp',
    crossDomain:true,
    error: function(data, status) {
       //console.log(data);
    }
}).fail(function($xhr) {
    console.log($xhr);
    console.log($xhr.responseJSON);
    console.log($xhr.responseText);
});

Results in:

abort: function abort()
always: function always()
catch: function catch()
done: function add()
fail: function add()
getAllResponseHeaders: function getAllResponseHeaders()
getResponseHeader: function getResponseHeader()
overrideMimeType: function overrideMimeType()
pipe: function pipe()
progress: function add()
promise: function promise()
readyState: 4
setRequestHeader: function setRequestHeader()
state: function state()
status: 200
statusCode: function statusCode()
statusText: "load"
then: function then()

undefined
undefined