2016-05-17 35 views
1

我的問題很簡單,但在PHP代碼中使用javascript有點困難。在php中使用javascript代碼

這裏是我的代碼:

<script>var showdiv1 = 0;</script>  
--- some html codes --------- 
<script>showdiv1 = showdiv1 + 1;</script>    
<div class="col-md-12 box" id= "div<?php echo "<script type='text/javascript'>showdiv1</script>"?>"><br /> 

我得到的輸出。

<div id="div<script type='text/javascript'>showdiv1</script>" class="col-md-12 box"> 

預期輸出:

<div id="div1" class="col-md-12 box"> 

請指教,我究竟做錯了什麼?

感謝

+0

您不能使用客戶端腳本來這樣的服務器端腳本。 –

+0

PHP在發送到瀏覽器之前在服務器上執行。 Javascript在瀏覽器呈現頁面時執行。你不能像使用它們一樣在同一時間執行它們,因爲它們不是。 –

回答

2

Javascript和PHP是兩個分開的東西,而JS運行在客戶端,PHP將運行在服務器上。 所以:

<script>var showdiv1 = 0;</script>  
--- some html codes --------- 
<script>showdiv1 = showdiv1 + 1;</script> 

將創建1 PHP價值的JS變量沒有這個變量,因此不能被用於有理念。

像預期的那樣線<div class="col-md-12 box" id= "div<?php echo "<script type='text/javascript'>showdiv1</script>"?>"><br />的行爲,印刷<div id="div<script type='text/javascript'>showdiv1</script>" class="col-md-12 box">

也許你正在試圖做到的是:

<?php $showdiv1 = 0; ?>  
--- some html codes --------- 
<?php $showdiv1 = $showdiv1 + 1; ?>    
<div class="col-md-12 box" id= "div<?php echo $showdiv1 ?>"><br /> 
+0

感謝您的回答。投了票。 – Ironic

2

PHP是一個服務器端腳本和Javascript是客戶端。 你可以在php語句中使用javascript作爲字符串,但是重要的是要知道JavaScript代碼只運行瀏覽器上的網頁。

有問題的替代解決方案。 1.用PHP變量創建標籤id,並將其發送到您的JavaScript這樣的:

<script> 
var x=<?= $mydivId; ?>; 
</script> 
  • 用戶jQuery來創建在客戶端動態代碼。
  • +0

    感謝您的回答。投了票。 – Ironic