0

我正在尝试创建并循环通过指向动态生成的 XML 文件的链接列表。

这是我正在使用的代码。. . 我更改了网址:

    function scanSystem() {
    // Starting value for scans
        var xMin = '0';
        var yMin = '0';
    // Temporary - The highest coordinates that will be scanned
        var coordMax = '19';

        for (var x = xMin; x <= coordMax; x++) {
            for (var y = yMin; y <= coordMax; y++) {
                var url = "http://www.xmlurl.com/members/scanners/list.php?cockpit&xml&x=" + x + "&y="+ y;
                var link = "<a href='" + url + "'>(" + x + "," + y + ")</a><br>";
                $("#links_container").append(link);
                document.getElementById('iframe').src = url;
            }
        }
    }

链接生成并填充 div(目前更多的是调试功能),但实际上只有最后一个链接是通过 iframe 下载的。

任何想法如何使它也开始下载其他文件?

4

2 回答 2

0

A way to do it is to dynamically create a hidden iframe for each link instead of opening new windows (which will be annoying). Each iframe will be loading each file individually.

Taking advantage that you are using jQuery already, here's sample code:

function scanSystem() {
  var x
    , y
    , coordMax = 19
    , url
    , linksContainer = $("#links_container")
    ;

  for (x = 0; x <= coordMax; x++) {
    for (y = 0; y <= coordMax; y++) {

      url = 'http://www.xmlurl.com/members/scanners/list.php?cockpit&xml&x=' + x + '&y=' + y;
      $('<a/>',{
          href : url
        })
        .text(x+','+y)
        .appendTo(linksContainer);

      $('<iframe/>',{
          src : url
        })
        .appendTo('body');
    }
  }
}
于 2013-02-17T00:57:25.707 回答
0

无需在 iframe 中打开 URL,只需使用window.open. 如果只下载一个文件,大多数浏览器会立即关闭新窗口。

于 2013-02-17T00:49:15.647 回答