使用JavaScript通过JavaScript创建新页面

时间:2015-12-02 20:50:55

标签: javascript jquery html function

我正在尝试编写一个JavaScript函数,该函数创建一个也运行JavaScript代码的新页面。但是,当我这样做时,似乎并没有真正识别代码。我的代码在

之下
<script>
function openPrint(){
  var w = window.open(); 
  var html = '<html><head> \<script      src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"\>\<\/script\> \<script\>var xml = \'<Report>......</Report>'\<\/script\> \<\script src="./js/printScript.js"\>\<\/script\> \<script src="./js/printHTML.js"\>\<\/script\> \<link rel="stylesheet" type="text/css" href="./css/printScriptStyle.css"\></head><body></body></html>'
;  w.document.writeln(html);
}
</script

正如您所看到的,html变量包含我想在新页面中运行的JavaScript代码,但它不会显示在开发人员工具的“源”选项卡中。我这样做是对的,还是这样呢?我知道这两个.js文件的工作原理,因为我之前在其他项目中使用过它们。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

你的反斜杠不在正确的地方

您需要在之前添加反斜杠:

  • 相同的引号(“')开始你的字符串

  • 在反斜杠(\)之前,不在空格之前

请注意,您使用反斜杠作为结束标记“&lt; \ script&gt;”应该是“&lt; / script&gt;”

在这种情况下,'writeln'功能也没有用。

writeln()只需在字符串末尾添加\ r \ n

在那里工作:

 var w = window.open();
 var html = '<html><head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"\>    </script> <script>var xml = \'<Report>......</Report>\'</script> <script src="./js/printScript.js"></script> <script src="./js/printHTML.js"></script> <link rel="stylesheet" type="text/css" href="./css/printScriptStyle.css"></head>    <body></body></html>';
 w.document.write(html);