在 PHP 中用事件回显 javascript,用参数回显函数调用


Echoing javascript with events and function calls with parameters in PHP

我想在PHP中回应以下内容:

echo "<td><p style='visibility: hidden' id='joindata$rowindex'>$joindata</p><a style='visibility: visible;' onclick='toggleDisplay('joindata$rowindex'); toggleDisplay('showjoindata$rowindex')' id='showjoindata$rowindex'>Show</a></td>";

但是由于嵌套的" '任何想法,我如何回显具有调用在PHP中具有参数的javascript函数的事件的HTML元素将不胜感激,谢谢:)

只需使用双引号分隔属性值,并在 PHP 字符串中转义它们:

echo "<td><p style='"visibility: hidden'" id='"joindata$rowindex'">$joindata</p><a style='"visibility: visible;'" onclick='"toggleDisplay('joindata$rowindex'); toggleDisplay('showjoindata$rowindex')'" id='"showjoindata$rowindex'">Show</a></td>";

或者,您可以将行为与内容分开,然后动态添加事件处理程序。

你必须添加一些双引号,试试这个:

echo "<td><p style='"visibility: hidden'" id='"joindata".$rowindex."'">$joindata</p><a style='"visibility: visible;'" onclick='"toggleDisplay('joindata".$rowindex."'); toggleDisplay('showjoindata".$rowindex."')'" id='"showjoindata".$rowindex."'">Show</a></td>";

PHP 在将视图与数据分开时具有最佳的性能和可伸缩性。但是在这种情况下,您可以执行以下操作:

<td>
    <p style="visibility: hidden" id="joindata<?php echo $rowindex; ?>">
        <?php echo $joindata; ?>
    </p>
    <a style="visibility:visible" onclick="toggleDisplay('joindata<?php echo $rowindex; ?>'); toggleDisplay('showjoindata<?php echo $rowindex; ?>')" id="showjoindata<?php echo $rowindex; ?>">Show</a>
</td>

另请查看 jQuery 文档,以避免硬编码 javascript 函数。你的应用将运行得更快。