在PHP echo中无法识别Javascript location.href

时间:2018-05-12 10:54:56

标签: javascript php

我正在尝试让onclick="javascript:location.href='where.ever'在php echo中工作,这样我就可以在显示下拉列表时点击整行。

我有以下代码:

echo "<div class='dropdown-item-row row' onclick='javascript:location.href='" . $row['username'] . "'>
            <div class='dd-pic'>
                <a href='" . $row['username'] . "'>
                    <img src='" . $row['profile_pic'] ."'>
                </a>
            </div>
            <div class='dd-right'>
                <div class='dd-title'>
                    <a href='" . $row['username'] . "'>" . $row['first_name'] . " " . $row['last_name'] . "</a>
                </div>
                <div class='dd-user-url'>
                    <a href='" . $row['username'] . "'>" . $row['username'] ."</a>
                </div>
                <p class='dd-common-friends'>" . $mutual_friends ."</p>
            </div>
        </div>";

其他<a>标签已被识别,但我想制作这些标签,因此它们甚至不需要。理想情况下,我只想点击该行,这就是链接。我不确定为什么php echo不能识别onclick

<div class='dropdown-item-row row' onclick='javascript:location.href='" . $row['username'] . "'>

我在回声中表达的方式有问题吗?

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

始终查看结果输出。您的输出如下所示:

<div class='dropdown-item-row row' onclick='javascript:location.href='where.ever''>

您可以清楚地看到那里的引号无效。 (另外,旁注javascript:用于href属性,而不是内联事件处理程序)

为什么不将整行作为<a>标记?

?>
<a href="<?=$row['username']?>" class="dropdown-item-row row">
    <div.....
    .....>
</a>
<?php

如果您退出PHP模式输出HTML,您可能会发现更整洁的事情。使用<?=$something?>弹出回PHP模式以输出值。这种技术通常也可以在IDE中更好地进行颜色编码!

相关问题