2011-08-27 35 views
-3

我想在一些Javascript代碼中包含一些PHP來編輯div的innerHTML。
當我使用的代碼PHP內的Javascript?

$content = file($filename); 
$name = $content[0]; 
<script type="text/javascript"> 
function showMoon1() 
{ 
var MD = document.getElementById('m1t'); 
MD.innerHTML = "<font face='Georgia'><table border="0"><tr><th><?php echo $name; ?></th></tr><tr><td>Rating: rating</td></tr><tr><td>Review: review</td></tr><tr><td>Category: category</td></tr><tr><td>Link: <a href='http://youtube.com'>welcome</a></td></tr></table></font>"; 
} 
</script> 
<div id="m1t"></div> 
<a href="#" onClick="showmoon1()">CLICK HERE</a> 

出於某種原因,當我點擊「點擊這裏」鏈接,沒有任何反應。我將完整的代碼編輯爲一個簡短的例子,所以我不知道錯誤是否出現。我所知道的是,當我用content[0];代碼使用PHP變量時,它不起作用。當我嘗試$name = "hi";它的作品。 什麼?
請不要投下這個問題,因爲它是特定的。謝謝。

+7

你這種方式不能混合使用PHP和JavaScript。您需要在''符號中包裝PHP –

+0

如果您嘗試var_dump($ content)作爲該腳本中的第三行,您會看到什麼? – gargantuan

+5

** - 1 **沒有關閉和打開(?>,<?php)標籤,使用'標籤和表格進行21世紀佈局,換行符在{在JS中。 –

回答

0
<?php 
$content = file($filename); 
$name = $content[0]; 
?> 
<script type="text/javascript"> 
function showMoon1() 
{ 
var MD = document.getElementById('m1t'); 
MD.innerHTML = "<font face='Georgia'><table border="0"><tr><th><?php echo $name; ?></th></tr><tr><td>Rating: rating</td></tr><tr><td>Review: review</td></tr><tr><td>Category: category</td></tr><tr><td>Link: <a href='http://youtube.com'>welcome</a></td></tr></table></font>"; 
} 
</script> 
<div id="m1t"></div> 
<a href="#" onClick="showmoon1()">CLICK HERE</a> 

更正確

2

你缺少一個右PHP標記您的腳本之前:

... 
$content = file($filename); 
$name = $content[0]; 
// You were missing this tag 
?> 
<script type="text/javascript"> 
function showMoon1() 
{ 
var MD = document.getElementById('m1t'); 
MD.innerHTML = "<font face='Georgia'><table border="0"><tr><th><?php echo $name; ?></th></tr><tr><td>Rating: rating</td></tr><tr><td>Review: review</td></tr><tr><td>Category: category</td></tr><tr><td>Link: <a href='http://youtube.com'>welcome</a></td></tr></table></font>"; 
} 
</script> 
<div id="m1t"></div> 
<a href="#" onClick="showmoon1()">CLICK HERE</a> 
1
  • 保持的JavaScript在單獨的文件中。
  • 不要附上HTML事件,你可以在上面提到的JS文件中做到這一點。

而不是瘋狂,你應該使用JavaScript的XHR來從PHP腳本請求自定義內容。

2

PHP是服務器端,JavaScript是客戶端。你需要相應地處理它們。需要被包裹在

<?php 
... 
?> 
0

在點擊您所呼叫showmoon1()所有的PHP代碼,你已經定義showMoon1()。 兩個函數名不匹配.. 同樣的innerHTML字符串被中間由於在B部分雙引號關閉/ W 在:邊界=「0」,將其更改爲邊界=「0」

<script type="text/javascript"> 
function showmoon1() 
{ 
alert(1); 
var MD = document.getElementById('m1t'); 
MD.innerHTML = "<font face='Georgia'><table border='0'><tr><th><?php echo $name; ?></th></tr><tr><td>Rating: rating</td></tr><tr><td>Review: review</td></tr><tr><td>Category: category</td></tr><tr><td>Link: <a href='http://youtube.com'>welcome</a></td></tr></table></font>"; 
} 
</script>