以下内容中onClick属性的正确语法是什么:
<?php
if($_resp['user']) {
echo '<div class="logo"><a href="http://www.example.com/" onClick="_gaq.push(['_trackEvent', 'Join', 'Home', 'BigButton']);">Link Text</a>';
}
?>
答案 0 :(得分:7)
由于您要嵌套双引号和单引号,因此需要使用反斜杠转义onClick
中的单引号。
echo '<div class="logo"><a href="http://www.example.com/" onClick="_gaq.push([\'_trackEvent\', \'Join\', \'Home\', \'BigButton\']);">Link Text</a>';
答案 1 :(得分:3)
考虑使用HEREDOC
if ($_resp['user']) {
echo <<<EOL
<div class="logo"><a href="http://www.example.com/" onClick="_gaq.push(['_trackEvent', 'Join', 'Home', 'BigButton']);">Link Text</a>
EOL;
}
或退出PHP模式:
if ($_resp['user']) { ?>
<div class="logo"><a href="http://www.example.com/" onClick="_gaq.push(['_trackEvent', 'Join', 'Home', 'BigButton']);">Link Text</a>
<?php }
两者都完成了工作,并且消除了在生成的html / javascript中转义引号的任何需要
答案 2 :(得分:0)
您可以混合HTML和PHP,因此您可能只想将其移出PHP:
<?php
if($_resp['user']) {
?>
<div class="logo"><a href="http://www.example.com/" onClick="_gaq.push(['_trackEvent', 'Join', 'Home', 'BigButton']);">Link Text</a>
<?
}
?>