【问题标题】:Use a PHP variable in Javascript在 Javascript 中使用 PHP 变量
【发布时间】:2013-06-29 11:32:11
【问题描述】:
如何在 Javascript onclick=function 中使用 PHP 变量?
<?php
for($i=0;$i<10;$i++){
echo '<li><div><a href="#" onclick="showPopUp("' . $mobile_image_link[$i+$p] .'","' .$mobile_image_link[$i+$p] .'");"><img src='. $mobile_image_link[$i+$p] .' width="160" height="165" alt="" border="0" /></a></div></div></li>';
}
?>
【问题讨论】:
标签:
php
javascript
variables
onclick
javascript-framework
【解决方案1】:
<?php
for($i=0;$i<10;$i++){
$onclickvariable = "showPopUp('".$mobile_image_link[$i+$p]."','".$mobile_image_link[$i+$p]."');"
echo '<li><div><a href="#" onclick="'.$onclickvariable.'">
<img src='.$mobile_image_link[$i+$p].' width="160" height="165" alt="" border="0" /></a>
</div></li>';}
?>
【解决方案2】:
要么使用双引号方式(php变量只插入双引号字符串中。
<?php for($i=0;$i<10;$i++){
echo "<li><div><a href=\"#\" onclick=\"showPopUp('$mobile_image_link[$i+$p];','$mobile_image_link[$i+$p];');\"><img src=\"$mobile_image_link[$i+$p]\" width="160" height="165" alt="" border="0" /></a></div></div></li>";}
?>
或者做你已经为 img 标签做的事情。您需要转义一些引号才能使其正常工作。
<?php for($i=0;$i<10;$i++){
echo '<li><div><a href="#" onclick="showPopUp(\''.$mobile_image_link[$i+$p].'\',\''.$mobile_image_link[$i+$p].'\');"><img src="'.$mobile_image_link[$i+$p].'" width="160" height="165" alt="" border="0" /></a></div></div></li>';}
?>
【解决方案3】:
在 javascript 代码中简单地回显 php 变量:
<script type="text/javascript">
var js_variable= <?php echo $php_variable; ?>
</script>
【解决方案4】:
只需连接字符串,并使用反斜杠转义必要的引号:
echo '
<a href="#"
onclick="showPopUp(\''. $mobile_image_link[$i+$p].'\',
\''. $mobile_image_link[$i+$p].'\');">
<img src="'.$mobile_image_link[$i+$p].'" alt="" />
</a>'
会导致:
<a href="#"
onclick="showPopUp('http://mylink.com/1',
'http://mylink.com/2');">
<img src="http://mylink.com/image.png" alt="" />
</a>
附带说明,请阅读 HTML 最新规范,不推荐使用和不鼓励使用 width=""、height="" 和 border="" 设置标签样式