2016-09-30 107 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>';