在onClick函数中传递php变量

Vin*_* HC 10 html javascript php

我想在onClick函数中传递php变量值.当我传递php变量时,在UI中我得到变量本身而不是我需要变量中的值.

下面是代码片段,请帮帮我.

<?php
print '<td>'; 
$node  = $name->item(0)->nodeValue;
$insert= "cubicle"."$node<br>";
Echo '<a href= "#" onClick= showDetails("$node");>'. $insert .'</a> ';
print '</td>';
?>
Run Code Online (Sandbox Code Playgroud)

Fel*_*ing 22

变量解析仅在双引号字符串中完成.你可以使用字符串连接,或者我发现更具可读性,printf [docs]:

printf('<a href= "#" onClick="showDetails(\'%s\');">%s</a> ', $node, $insert);
Run Code Online (Sandbox Code Playgroud)

最好的方法是不使用echoHTML,而是将PHP嵌入HTML中:

<?php
    $node  = $name->item(0)->nodeValue;
    $insert = "cubicle" . $node;
?>

<td> 
    <a href= "#" onClick="showDetails('<?php echo $node;?>');">
        <?php echo $insert; ?> <br />
    </a>
</td>
Run Code Online (Sandbox Code Playgroud)

您必须少考虑引用,并且调试HTML也更容易.

注意:如果$node表示数字,则参数周围不需要引号.


Jim*_*lle 5

您不应该将 $node 包装在 '"' 中:

Echo '<a href= "#" onClick= showDetails($node);>'. $insert .'</a> ';
Run Code Online (Sandbox Code Playgroud)

如果您希望 $node 的值在一个字符串中,那么我会这样做:

Echo '<a href= "#" onClick= showDetails("' . $node. '");>'. $insert .'</a> ';
Run Code Online (Sandbox Code Playgroud)