这是我到目前为止的代码:
$output = <<<BLOCK
<html>
<head>
<title>Preview!</title>
<script type="text/javascrit">
var content = $data;
</script>
</head>
<body>
<a href="" onclick="preview()">Click Me!</a>
<script type="text/javascript">
function preview(){
var preview = window.open('','preview','scrollbars=1,height=500,width=500,resizable=1');
preview.document.open();
preview.document.write(content);
preview.document.close();
}
</script>
</body>
</html>
BLOCK;
echo $output;
$ data包含由php脚本生成的完整html文档。
这似乎不起作用,但我认为你可以理解我正在尝试做的事情。
答案 0 :(得分:0)
“数据”是从另一个脚本生成的......我们可以看到吗? 更新: 你不能将 head 中的“内容”传递给 body ,就像 null 一样,尝试作为函数预览的给定参数。 尝试在执行OPEN()的地方访问它。
或者将“数据”存储在隐藏的div中或通过AJAX(最好)获取它。 内容2 = NULL; 含量= “asdsadas”;
$data="asdsadas";
$output = "
<html>
<head>
<title>Preview!</title>
<script type=\"text/javascript\">
var content2 = '".$data."'
</script>
</head>
<body>
<a href=\"\" onclick=\"preview()\">Click Me!</a>
<script type=\"text/javascript\">
function preview(){
var content = '".$data."'
var preview = window.open('','preview','scrollbars=1,height=500,width=500,resizable=1');
preview.document.open();
preview.document.write(content);
preview.document.write(content2);
preview.document.close();
}
</script>
</body>
</html>";
echo $output;
答案 1 :(得分:0)
我们必须知道$ data包含什么,但你肯定要逃避引号或特殊字符...