2013-07-02 113 views
0

如何在Javascript onclick=function中使用PHP变量?在Javascript中使用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>'; 
    } 
?> 

回答

1

只需在连接字符串,并用反斜杠转义必要报价:

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=""设置标签样式已被弃用和劝阻

0

简单地回响在JavaScript代码的PHP变量:

<script type="text/javascript"> 
     var js_variable= <?php echo $php_variable; ?> 
</script> 
0

既可以使用双引号的方法(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>';} 
?> 
0
<?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>';} 
?>