当点击获取后,iframe会返回一个xml。但是我该如何用js获取xml里的值呢?
 <iframe id="if1" name="if1" src=""></iframe>
 <a href="javascript:;" onclick="ss();">获取:</a> 
 <a href="javascript:;" onclick="cc();">查看:</a><script type="text/javascript">
function ss()
{
 document.getElementById("if1").src="http://www.xxx.com";
}
function cc()
{
alert(document.getElementById("if1").innerText);
}
</script>

解决方案 »

  1.   

    是跨域了,所以才用iframe的,点击获取后可以看到iframe里的返回值(xml格式的)但是不知道该如何获取里边的值
      

  2.   

    跨域了用iframe也不行的,自能用代理
      

  3.   

    .............咱现在能不讨论跨域的事吗!已经为了跨域折腾2天了,目前的情况是这样写可以跨域。我只想知道如果获取iframe里的值
      

  4.   

    To showbo 
    我想了想,你的意思是不是我的iframe是跨域,即便有方法获取iframe里的值但是也因为我这个是跨域而没有权限
      

  5.   

    那我生抓iframe里的内容,就像页面抓取软件程序一样应该可以吧!有解决方案吗!
      

  6.   

    用JAVA可以用下面的方法(或者用第三方包直接解析XML)
    其他语言估计也有办法(ASP.net有,其它的不知道~~~)
    至于直接用JS,跨域的问题还不知道怎么解决http://www.w3school.com.cn/example/xmle/plant_catalog.xml 是在网上随便找的XML
    也可以是网页,比如 http://www.sina.com.cnimport java.io.*;
    import java.net.*;public class Other {
    public static void main(String args[]) {
    StringBuffer sb = new StringBuffer();
    //String html = "";
    try {
    URL u = new URL("http://www.w3school.com.cn/example/xmle/plant_catalog.xml");
    URLConnection uc = u.openConnection();
    InputStream raw = uc.getInputStream();
    InputStream buffer = new BufferedInputStream(raw); Reader r = new InputStreamReader(buffer);
    int c;
    while ((c = r.read()) != -1) {
    sb.append((char) c);
    //html += (char) c;
    }
    } catch (IOException e) {
    System.err.println(e);
    }

    System.out.println(sb);
    //System.out.println(html);
    }
    }