如何使用javascript获取子窗口中的非html内容

问题描述:

我想用javascript在子窗口中打开一个文本文件,然后将内容读入父窗口。如何实现它?如何使用javascript获取子窗口中的非html内容

下面的代码,如果data.xml不是HTML页面,如何通过javascript获取内容到父窗口?

function op() { 
    win = window.open("http://xxx.bb.com/data.xml", "win", "width=200,height=200") 
} 
+1

xxx.bb.com上的父窗口也是如此吗?或者你是否从父窗口打开一个窗口到其他某个网站? – 2012-04-13 17:26:10

+0

由于某些问题,我不能使用xmlhttprequest在一个窗口中执行此操作,所以存在一些跨域限制。 – 2012-04-13 17:27:53

+0

父窗口和子窗口不在同一个站点中。 – 2012-04-13 17:28:26

您已经试过XmlHttpRequest并且因为跨域限制而堕落。如果两个页面位于同一个域中,则网页(和其中包含的代码)只能操作其他数据或元素。您将运行两个窗口的相同跨域限制。

正确的方法是使用XmlHttpRequest但确保该请求的目标位于您的域中。这可能会涉及在您的服务器上创建代理脚本,该服务器可以提供来自其他域的页面或数据。您的页面请求您的脚本获取外部数据;该脚本获取数据并提供服务。由于您域中的脚本,数据似乎来自您的域,并且不受跨域限制。

Simple PHP proxy script

如果你正试图获得数据不是你的,你应该问的许可来处理它或重新发布。 Are web developers allowed to scrape html content?(接受的答案不是最好的答案)

+0

IE扩展/插件可以帮助我吗? – 2012-04-27 15:20:19