我正在尝试编写一个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文件的工作原理,因为我之前在其他项目中使用过它们。任何帮助表示赞赏。
答案 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);