2017-01-09 50 views
0

我需要把echo作爲if語句的條件。因此,舉例來說:PHP:回聲作爲條件是否statament?

<html> 

... 
... 

<body> 

    <form onsubmit"<?php $c=false; if(echo "<script>example();</script>";){ $c=true; } echo "\""; if($c){ echo "action=\"./\"";} method="post"> 
    ... 
</form> 

... 
... 

<script> 
function example() 
{ 
    alert("This is only an example"); 
    if(..) return true; 
    return false; 
} 
</script> 

</body> 
</html> 

所以我需要在JavaScript中創建一個函數(這個頂部是的例子,但是,在房地產,它更復雜),並調用它的if語句。

更新 只有當Javascript函數爲true時,代碼才應該執行表單的「動作」。

+1

你要調用JS在服務器端?不可能。 http://stackoverflow.com/q/13840429 – Teemu

+0

對於什麼時候應該發生更具體的。現在,你的榜樣沒有多大意義。 – RST

+0

對不起,這是什麼意思? – Sav

回答

0

PHP在服務器上運行。 JavaScript在客戶端運行。所以php不能使用js變量或其函數來進行服務器端操作。什麼ü可以做的是,美國可以從PHP調用JS功能像

echo "<script> myFunction() </script>"; 

但在同一相同的情況下,ü可以使用PHP值JS行動, 如

<script> 
var x = <?php echo $myVar ?> 
if(x == true){ 
    alert("yahooo"); 
} 
</script> 
+1

實際上,這不會「調用」js函數。它只會將該字符串打印出來,並將其發送給將解析該字符串並執行該功能的客戶端。這是一個很大的區別。 –

+0

我知道了,爲此我問這個問題.... – Sav

+0

@Sav - 就像多個人已經告訴你的一樣,_you可以不**從PHP_調用javascript函數。 PHP在服務器上執行,將結果返回給將執行任何JavaScript的瀏覽器。 –