我正在使用这个插件:https://github.com/padolsey/jquery.fn/tree/master/cross-domain-ajax/
这是我的代码:
$.ajax({
dataType: 'html',
type: 'GET',
url: 'http://www.google.com',
crossDomain: true
}).done(function(data) {
$("#box").html('').append(data);
});
根据我的理解,即使我有dataType:'html'
,我也相当确信这仍然会在JSONP中得到响应。
我希望能够抓取页面的整个html,完整显示页面所需的一切。可与iframe相比较。我之所以需要通过ajax来实现这一点,是因为最终我需要将参数传递到我正在使用的URL。用完整的HTML返回页面内容以便显示页面的最佳方式是什么?我需要做些什么来返回页面脚本/样式表吗?
基本上,我调用的URL需要返回,这样我就可以将返回附加到div id,然后该div id应该与我调用的页面完全相同,就好像我要在浏览器窗口中独立加载该页面一样。
谢谢!
您可以尝试Ajax跨源jQuery插件。
http://www.ajax-cross-origin.com/
$.ajax({
crossOrigin: true,
url: url,
success: function(data) {
console.log(data);
}
});
引用的插件使用Yahoo YQL服务作为获取远程页面的代理。YQL将返回json,您应该能够访问data.responseText
中的数据。这是插件的限制文档
为了确保您可以将数据记录到控制台并查看其结构。
可以在没有插件的情况下做同样的事情,使用YQL控制台创建所需的URL,以满足您使用XPATH语法