2011-07-17 151 views
0

如何從PHP調用jQuery函數?從PHP調用jQuery函數

<?php 
if ($error == 1) { 
?> 
    <script type="text/javascript"> 
     error('1'); 
    </script> 
<? 
} 
?> 

它沒有工作。

+1

你到底想達到什麼目的? (你不能從PHP本身調用jQuery) – MeLight

+0

PHP在服務器中執行,輸出發送到瀏覽器,jQuery是運行在瀏覽器中的Javascript。你可以像user834929這樣做,但是,使用AJAX從jQuery調用PHP是個好主意。 – khattam

回答

0

你需要指定error('1')是一個jQuery函數的調用:

jQuery.error('1'); 
// or, uning the $ alias: 
$.error('1'); 
2

這取決於你在哪裏放置HTML輸出中的代碼片段。

其中的一個解決方案,我認爲,應該工作:

<?php 
if ($error == 1) { 
?> 
<script type="text/javascript"> 
$(function() { 
    error('1'); 
}) 
</script> 
<? 
} 
?> 

<?php 
if ($error == 1) { 
?> 
<script type="text/javascript"> 
$(document).ready(
    function() { 
    error('1'); 
    } 
) 
</script> 
<? 
} 
?> 
+0

好的,我可以看到其他答案者建議你不能從PHP調用JS,以及類似的東西。當然,你不能。但是,這也不意味着,例如,如果在PHP(服務器)端滿足某些條件,則顯示一些jQuery動畫,這是您應該避免的。所以我認爲這個問題是合法的。 – user834929

3

不,你不能調用jQuery函數從PHP。但是你可以用PHP生成html,它將在運行時執行jQuery函數。

  • JavaScript是發送到客戶端,並在那裏執行
  • PHP是在服務器上編譯,然後發送給客戶端

大的區別在於

2

腳本標籤不能被注入直接轉換成php標籤....但如果你迴應它,腳本將工作....以下代碼工程:

<?php 
if(some condition){ 
    echo "<script>alert('Hello World');</script>"; 
} 
?> 

在使用jQuery的情況下,你必須包裝在代碼:

jQuery(function(){ 
    //Your Code 
}); 

,然後呼應它....

+0

我只是忘了將''添加到alert()函數中......所以請不要忘記它們...謝謝... –