打开多个窗口并动态写入它们

时间:2016-11-28 22:13:06

标签: javascript jquery

我想打开多个窗口/标签,并动态地向其中写入不同的内容。

这就是我目前所拥有的:

var x = window.open('', 'window'+$wc);
$(x.document.body).html("<div class='container' id='c'><pre id='x' /></div>");
var ele = x.document.getElementById("x");
ele.innerText = asString;
ele = x.document.getElementById("c").style.display = "inline";
x.document.close();
$wc = $wc + 1; // window count that I confirmed actually iterates

此代码嵌套在for循环中多次调用的函数中。 asString是一个包含xml标记的字符串,它们针对每个循环交互进行更改。 'window'+$wc是其他SO帖子中建议的每个窗口的唯一名称。第一次迭代工作正常,它打开一个新窗口并将内容写入它,但我在第二次迭代时遇到错误:

TypeError: Cannot read property 'document' of undefined
at addTopicXml (selfServices.asp:1464)
at String.<anonymous> (selfServices.asp:1320)
at Function.n.extend.each (jquery.min.js:2)
at Object.<anonymous> (selfServices.asp:1313)
at Function.n.extend.each (jquery.min.js:2)
at genXML (selfServices.asp:1312)
at HTMLButtonElement.onclick (selfServices.asp:206)

引用该行:

$(x.document.body).html("<div class='container' id='c'><pre id='x' /></div>");

作为错误(仅在第二次迭代后遇到)。

0 个答案:

没有答案
相关问题