我使用PHP條件,並想知道如果我能沒有一些一個運行的JavaScript函數已經在其上單擊使用JavaScript:從PHP運行JavaScript函數if語句
if($value == 1)
{
JavaScript to run the function
}
我會怎麼做那?
我使用PHP條件,並想知道如果我能沒有一些一個運行的JavaScript函數已經在其上單擊使用JavaScript:從PHP運行JavaScript函數if語句
if($value == 1)
{
JavaScript to run the function
}
我會怎麼做那?
首先請記住,您的PHP代碼在服務器上進行評估,而JavaScript在客戶端的瀏覽器中運行。這些評估發生在不同的地方,在不同的時間。因此你不能從PHP調用JavaScript函數。
但是,使用PHP,您可以呈現HTML和JavaScript代碼,使其僅在您的PHP條件爲true時才呈現。也許你可能想嘗試這樣的事情:
if($value == 1) {
echo "<script>";
echo "alert('This is an alert from JavaScript!');";
echo "</script>";
}
Javascript是客戶端代碼,PHP是服務器端,所以你不能在PHP中構建頁面時執行JavaScript。
儘快在頁面加載在客戶端執行JavaScript的,一種方法是用身體onload
處理程序來調用你的函數:
<?php
echo '<script type="text/javascript">';
echo 'function myFunction(){ /* do_something_in_javascript */ };';
echo '</script>';
if ($value == 1) {
echo '<BODY onLoad="myFunction()">';
}
?>
更重要的是,如果你能負擔得起的帶寬使用jQuery和使用$(document).ready()
:
<?php
if ($value == 1) {
echo '<script type="text/javascript">';
echo '$(document).ready(function(){ /* do_something_in_javascript */ });';
echo '</script>';
}
?>
我發現,你不能這樣做在IE和其他瀏覽器這樣的事情。它雖然在Firefox中工作。您必須以其他方法發佈的方式回顯每一行。
<?php
if(somecondition)
{
?>
<script>
Some javascript code
</script>
<?php
}
?>
我知道這個線程是舊的,但我只是碰到它,想要添加我的技術。
您也可以將php變量回顯爲JavaScript,並根據其值進行操作。我用它將數據庫值放入js中,以便用戶可以在頁面上進行數學計算。
<script>
var jsvar = <?php echo $phpvar ;?>
if (jsvar = x){ do something...}
</script>