【问题标题】:Echoing javascript with events and function calls with parameters in PHP在 PHP 中使用事件和函数调用与参数回显 javascript
【发布时间】:2012-04-21 00:58:33
【问题描述】:
我想在 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>";
但是由于嵌套的''所以它没有回显任何想法如何回显HTML元素,这些元素具有调用在PHP中具有参数的javascript函数的事件将不胜感激,谢谢:)
【问题讨论】:
标签:
php
javascript
html
echo
quotes
【解决方案1】:
只需使用双引号来分隔您的属性值,并在您的 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>";
或者,您可以将行为与内容分开,然后动态添加事件处理程序。
【解决方案2】:
你必须添加一些双引号,试试这个:
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>";
【解决方案3】:
当您将视图与数据分开时,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 函数进行硬编码。您的应用会运行得更快。