在JavaScript新窗口中显示php内容

在JavaScript新窗口中显示php内容,php,javascript,Php,Javascript,以下是我目前掌握的代码: $output = <<<BLOCK <html> <head> <title>Preview!</title> <script type="text/javascrit"> var content = $data; </script>

以下是我目前掌握的代码:

$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;   
$output=“数据”是从另一个脚本生成的……我们能看到它吗?
更新:
您不能将“内容”从头传递到体,就像这样,它是null,尝试作为函数预览的给定参数。
尝试在执行OPEN()操作的位置访问它

或者将“数据”存储在隐藏的div中,或者通过AJAX获取(最好)。 content2=null; content=“asdsadas”

$data=“asdsadas”;
$output=”
预览
var content2='“$data.”
函数预览(){
var content='“$data.”
var preview=window.open(“”,'preview','scrollbars=1,高度=500,宽度=500,可调整大小=1');
preview.document.open();
预览。文档。编写(内容);
预览。文档。编写(内容2);
preview.document.close();
}
";
echo$输出;

我们必须知道$data包含什么,但您肯定必须避开引号或特殊字符…

“javascrit”->“javascript”,但我怀疑这是您的问题。“似乎不起作用”是一个应该在某个时候被禁止的短语,因为它的意义太小了。如果它不起作用,会发生什么?会弹出一个新窗口,地址为:空白,标题为无标题,内容为空白。-$data中的内容只是简单的html,没有什么特别的。嗨,KA_lin,你帮了大忙,如果允许的话,我想单独给你评分。我用完全不同的方式解决了我的问题。在您的示例中,传入“普通”字符串不会导致任何问题。当我试图传递一些html标记/内容时,我开始遇到问题——我有200多行html内容。我遇到的一些错误包括:未终止的字符串文字、未定义的函数和语法错误。(我可能早就应该提到这些)我做了两件事来解决我的问题:1。将字符串分解为数组2。对每个数组值运行addslahes。然后我使用document.write输出数组的每个元素。再次感谢
$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;