2016-09-23 54 views
-1

是否可以调用此函数来使用PHP打印文档?使用PHP调用Javascript函数

这里是我的代码家伙..

<html> 
<head> 
<script language="javascript"> 
    function Clickheretoprint() 
    { 
    var disp_setting="toolbar=yes,location=no,directories=yes,menubar=yes,"; 
     disp_setting+="scrollbars=yes,width=900, height=700, left=100, top=25"; 

    var docprint=window.open("","",disp_setting); 
     docprint.document.open(); 
     docprint.document.write('<html><head><title>Testing</title>'); 
     docprint.document.write('</head><body onLoad="self.print()" style="width: 900px; height="auto" font-size:16px; font-family:arial;">');   
     docprint.document.write('<h1>Hello World!</h1>');   
     docprint.document.write('</body></html>'); 
     docprint.document.close(); 
     docprint.focus(); 
    } 
</script> 
</head> 
<body> 
</body> 
</html> 

谢谢。

+2

窗口只需添加一个调用该函数 – j08691

+2

你不“从PHP调用JavaScript的”您“包括一个JavaScript函数调用在你的输出中“。 PHP是一种服务器端语言。 Javascript是一种客户端(浏览器)语言。浏览器和服务器可以进行通信,但不能相互调用某个功能。 – mertyildiran

+0

它不会工作先生..我曾尝试更改aler(“你好世界”)的功能;并添加一个PHP代码来回声clickheretoprint(),它的工作原理..我想知道为什么它不在这个代码工作.. T_T – Adrian

回答

1

你的JavaScript功能书面(打开一个新窗口,写它,然后打开打印对话框),我已经使用PHP下方插入函数调用:

<script language="javascript"> 
function Clickheretoprint() { 
    var disp_setting="toolbar=yes,location=no,directories=yes,menubar=yes,"; 
    disp_setting+="scrollbars=yes,width=900, height=700, left=100, top=25"; 

    var docprint=window.open("","",disp_setting); 
    docprint.document.open(); 
    docprint.document.write('<html><head><title>Testing</title>'); 
    docprint.document.write('</head><body onLoad="self.print()" style="width: 900px; height="auto" font-size:16px; font-family:arial;">'); 
    docprint.document.write('<h1>Hello World!</h1>'); 
    docprint.document.write('</body></html>'); 
    docprint.document.close(); 
    docprint.focus(); 
} 
<?php 
//calling function using PHP 
echo 'Clickheretoprint();'; 
?> 
</script> 

我想你”有另一个问题:

  • 您的浏览器是否阻止弹出窗口? (如果是这样的话,该窗口永远不会打开,因此docprint.document未定义)
  • 您可能不需要通过PHP调用该函数 - 但也许使用JavaScript中的单击事件。

此外,docprint.document.open();是不必要的,考虑到你已经打开了var docprint=window.OPEN("","",disp_setting);

+0

是的..我的浏览器是防止弹出窗口..(怪不得为什么..哈哈)..是的先生我试着把< button onclick =“return Clickheretoprint();”>点击我!体内..它的工作..但需要在PHP中调用它.. – Adrian

+1

@adrian为什么你需要通过PHP调用它,并且你使用了我指定的PHP代码? (它通过PHP线对我来说) – lookdad

+1

是的先生..它现在工作..我已经配置我的设置,以允许弹出窗口为启用.. – Adrian