我上传文件后以XML格式返回一些内容,因为上传文件没办法直接用AJAX,所以用iframe,怎样取得这个iframe里的XML内容呢?

解决方案 »

  1.   

    还不是控制domdocument.all.iframename
      

  2.   

    <IFRAME ID=IFrame1 FRAMEBORDER=0 SCROLLING=NO SRC="sample.htm"></IFRAME>
    var collAll = document.frames("IFrame1").document.all
    得到了iframe里面的document,还有啥不能访问的了???
    比如你的sample.htm里面有一段xml
    <xml id=xml><data>test</data></xml>
    直接使用不就可以了吗,主要是你上传文件时,指定的target是iframe1,然后返回的是一个xml的文本内容
    就可以使用使用了呀
      

  3.   


    如果这个文件是一个HTM的这个就可以, 你测试一下用一个纯的XML或用ASP或PHP之类的输出XML的返回看看就知道了
      

  4.   

    test1.htm
    <html>
    <head></head>
    <script>
    function test() {
    var collAll = document.frames("IFrame1");
    alert(collAll.xl.outerHTML);}
    </script>
    <body>
    <IFRAME ID=IFrame1 FRAMEBORDER=0 SCROLLING=NO SRC="test.htm"></IFRAME><input type=button name=btn value=btn onclick="test()">
    </body></html>
    test.htm
    <html>
    <head></head>
    <xml id=xl><dt>test</dt><dt>test</dt></xml>
    <body></body></html>
      

  5.   

    既然是一个输出的返回,你直接在HTML加上XML数据岛不就可以了吗?XML和HTML不就是一个扩展名吗,没啥区别的呀,你可以把我上面的代码test.htm里面的html标签去掉,直接改成<xml id=xl><dt>test</dt><dt>test</dt></xml>
    照可可以取得值的
      

  6.   

    不能这样弄,得反过来调用,即返回的iframe直接写js代码,否则还在上传过程中,你去调用可能会报错,另外iframe写js,比如parent.backend("参数"),比较及时。