将PHP var传递给JavaScript函数

时间:2012-01-25 21:28:23

标签: php javascript

我在这个问题上找了很多帖子,但却无法弄清楚如何逃避这种语法。

我只是尝试通过JavaScript echo的PHP window.open弹出编辑窗口,并将该窗口从MySQL传递给prame。

代码echo以及通过PHP动态生成的表格。 在echo里面,最后一行是有问题的,我似乎无法正常运作。

<a href="#" onClick="window.open( "popup.php?message='.$Url.'", "myWindow", "status = 1, height = 350, width = 1022, resizable = 0 " )" class="bstyle">E</a></td>

注意:我已经在这里处理了很多关于这个问题的帖子,并尝试了许多解决方案,但都没有解决。我确信这个问题非常简单,但是我一直在指责它正在让我的注意力下降。

4 个答案:

答案 0 :(得分:1)

您可以将PHP嵌入HTML:

<a href="#"
   onClick="window.open(
      'popup.php?message=<?php echo $Url; ?>',
      'myWindow', 
      'status = 1, height = 350, width = 1022, resizable = 0'
   )"
   class="bstyle">
      E
</a>

P.S。奇怪的缩进只是为了让你可以在这里阅读。实际上不要在你的代码中使用它。

答案 1 :(得分:0)

echo '<a href="#" onClick="window.open(\'popup.php?message='.$Url.'\', \'myWindow\', 
  \'status = 1, height = 350, width = 1022, resizable = 0\')" class="bstyle">E</a></td>';

如果您正在编写html,并写了这个:

<a href="#" onClick="window.open( "popup.php?message=blah", "myWindow", 
  "status = 1, height = 350, width = 1022, resizable = 0 " )" class="bstyle">E</a></td>

您的onclick无效,因为它只会保留值window.open(。您可以使用单引号在onclick的字符串值中定义字符串。因为在我的情况下我(不确定你是否,但它看起来像它)定义我的字符串以使用单引号回应,我需要使用\字符转义我的字符串中的那些。

答案 2 :(得分:0)

使用反斜杠转义PHP中的字符。

echo '<a href="#" onClick="window.open( \'popup.php?message='.$Url.'\', \'myWindow\', \'status = 1, height = 350, width = 1022, resizable = 0\' );" class="bstyle">E</a></td>';

答案 3 :(得分:0)

您可以通过回显变量将变量放在HTML代码中。

<a href="#" onClick="window.open ( 'popup.php?message=<?php echo $Url; ?>', 'myWindow', 'status = 1, height = 350, width = 1022, resizable = 0 ' )" class="bstyle">E</a></td>

在这种情况下,我还想推荐urlencode。 这背后的原因是,因为你回显了$ Url变量。 每当$ Url包含HTML字符(例如“或”)时,您的javascript调用就会中断。

在popup.php中,您可以urldecode消息,以便它再次恢复正常。