onclick函数中的php变量?

onclick函数中的php变量?,php,html,Php,Html,我有一个php文件在这里,我必须写html,而不是关闭php标记,每次我只是使用echo'html代码' 所以我的代码是 <?php $mid = 1; echo '<div class="message_wrap"><span onclick="viewMessage(1)">Click</span></div>'; ?> <script> function viewMessage(id){

我有一个php文件在这里,我必须写html,而不是关闭php标记,每次我只是使用
echo'html代码'

所以我的代码是

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

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

}    
</script>

但我在点击时什么都没有,当我看到生成的
html
时,它就这样崩溃了

点击


它返回“Uncaught SyntaxError:Unexpected token}”错误,因为您传递的参数前面有空格,后面有“=”,这是因为该方法

要修复它,请更改您的

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

echo“点击”;

您会遇到什么错误?它只是一个断开的引号,只需删除
(“.$mid.”)中的引号即可
如果您希望看到一个数字,我在单击时什么也没有,当我看到生成的html时,它会像这样崩溃
单击
;第二种方法有效吗?即使代码看起来不太好,这是更好的约定,您应该坚持第二种方法。
<?php
$mid = 1;
?>
<div class="message_wrap"><span onclick="viewMessage(<?php echo $mid;?>)">Click</span></div>
echo '<div class="message_wrap"><span onclick="viewMessage("'.$mid.'")">Click</span></div>';  
echo '<div class="message_wrap"><span onclick="viewMessage(\''.$mid.'\')">Click</span></div>';