2016-04-25 180 views
1

我有一個js文件。從php文件調用js函數

jiten.js

function myFunction(p1, p2) { 
    return p1 * p2; 
    }; 

我要調用從PHP文件

Demo.php

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <title>Mosquitto Websockets</title> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    <script src="jiten.js" type="text/javascript"></script> 
    </head> 
    <body> 
<?php 
    echo '<script type="text/javascript">myFunction(2,4);</script>'; 
?>  
    </body> 
</html> 

但是當我運行這個文件,我得到這個功能什麼都沒有....

+0

你期望它做什麼?上面的代碼將調用該函數,該函數將按預期方式執行,但只返回結果。它不會對結果做任何事情。把它放在一個戒備,你應該看到它的工作。 – Archer

回答

2

PHP和JavaScript是不同的語言,它們可以嵌入,但每種語言都必須調用它自己的函數。

您正在通過JavaScript代碼返回值,但是您無法使用PHP回顯該值,也無法通過JavaScript進行打印。

您需要在JavaScript中使用document.write()來打印值。

更正代碼:

<script type="text/javascript"> 
function myFunction(p1, p2) { 
    return p1 * p2; 
    }; 
</script> 
<?php 
echo '<script type="text/javascript">document.write(myFunction(2,4));</script>'; 
?> 

輸出:

8 
2

您的代碼運行良好,但您的Javascript功能不顯示任何東西,它只是返回一個值。

您應該使用類似console.log()alert()display的結果。

0

嘗試這個

echo '<script type="text/javascript">document.write(myFunction(2,4));