I simply need to get the ‘html’ from a particular (cross domain) request.
I’m using the JQuery.ajax() function passing dataType=json so that JQuery generates a script tag and fires off the request.
Here’s the code:
var url="http://www.google.com/callback=?"; $.ajax({ type: 'GET', url: url, dataType: 'json', success: function(data) {$("#out").append("success "+data); }, error: function(data) {$("#out").append("failure "+data); }, complete: function(data) {$("#out").append("complete "+data); }, data: {}, async: false });
Now, the odd bit is that, using firebug, I do see the generated script tag AND the response from the remote server, but none of my callbacks are being called.

How do I get the html returned from the ajax() call? Am I using the wrong function in the first place?
The callback isn’t called because the document returned is not a JavaScript application consisting of a function call to that callback.
JSON-P works by running third party JS that calls a function on your page.
You can’t use client side code to get content that isn’t expressed as JavaScript from a different origin.
If you want to get such content then you need to proxy it through a server. Either one on the same origin (so you can get the content directly) or one that transforms it to JSON-P.