-1

我需要有关此 PHP 脚本的帮助,该脚本由于某种原因无法正常工作,如下所示

<?php
.
.
.
echo "<li><a href='#' onclick='print(); return false; _gaq.push(['_trackEvent', 'check', 'test1', 'Print01']); '>";
echo "</a></li>";
.
.                                       
.
?>

如果我删除谷歌跟踪事件代码 onclick print() 将毫无问题地工作,有人知道问题出在哪里还是我错过了什么?

4

1 回答 1

0

看来您混淆了 PHP 和 Javascript 代码。onclick 处理程序中的“print()”是 Javascript,除非您定义了名为 的 Javascript 函数,否则print它将失败并加载链接。在返回 false后进行分析调用也没有用,因为它永远不会运行。

编辑:我有点误会了。您在代码中使用 ' ,以及使用 ' 来分隔包含的文本。通过创建一个单独的函数来处理单击事件,您可能会更好,或者您必须转义单引号。

onclick='print(); return false; _gaq.push([\'_trackEvent\', \'check\', \'test1\', \'Print01\']);'

.. 但请记住,PHP 也有转义码,您可能也必须转义 \。我宁愿把它移到一个单独的函数中:

<script type="text/javascript">
    function handleClick()
    {
        print();
        _gaq.push(['_trackEvent', 'check', 'test1', 'Print01']);
        return false;
    }
</script>

允许将 'check'、'test1'、'Print01' 作为参数提供给 handleClick 也会使重用变得更容易。

于 2012-11-05T10:22:08.713 回答