2016-09-30 140 views
-1

我有一個PHP文件在這方面,我也必須寫的,而不是關閉PHP標記HTML我每次只使用echo 'html code';php變量裏面的onclick函數?

所以我的代碼是這樣

<?php  
$mid = 1;  
echo '<div class="message_wrap"><span onclick="viewMessage(1)">Click</span></div>';  
?> 

<script> 
function viewMessage(id){ 
    alert(id); 

}  
</script> 

它給了我1警報,但我要使用onclick function$mid,但它打破了我的代碼,我用這個

echo '<div class="message_wrap"><span onclick="viewMessage("'.$mid.'")">Click</span></div>'; 

,但我什麼都沒上點擊,當我看到產生html這是打破這樣

<div class="message_wrap"> <span 1")"="" onclick="viewMessage(">Click</span> </div>;

<?php 
$mid = 1; 
?> 
<div class="message_wrap"><span onclick="viewMessage(<?php echo $mid;?>)">Click</span></div> 

但我不想關閉和打開php標記,因爲我有大的代碼,所以它看起來不好。

請幫我得到它的工作原理

+0

什麼錯誤做ÿ你得到了嗎? – j08691

+0

它只是一個破碎的報價,只是刪除在'(「'。$ mid。'」)中的引號''如果你期待一個數字 – Ghost

+0

我沒有得到任何關於點擊和當我看到生成的html它是這樣打破'

Click
'; – user1234

回答

1

它返回「未捕獲的SyntaxError:意外的標記}」錯誤,因爲你傳遞的參數有空間之前,它和「=」」,因爲這種做法後)

解決它改變你的

echo '<div class="message_wrap"><span onclick="viewMessage("'.$mid.'")">Click</span></div>'; 

echo '<div class="message_wrap"><span onclick="viewMessage(\''.$mid.'\')">Click</span></div>';