使用PHP变量作为JavaScript函数的参数

时间:2016-01-25 12:49:14

标签: javascript php string quotes quoting

我在使用引文时遇到了一些麻烦。所以,让我们举例说明我们想要通过变量连接发送两个字符串,然后通过JavaScript函数运行它们来连接它们(我知道这在PHP中是非常基础的,我知道如何去做,我和#39;我只是为了简单起见而使用这个例子。)

JavaScript代码:

function con(first, last) {
    answer = first+last;
    alert(answer);
    return;
}

HTML和PHP:

<?php
    $first = "Butter";
    $last = "Last";
    echo '<input type="button" value="Get Answer" onclick="con(".$first.", ".$last.")" />';
?>

上面的代码不起作用,我怎样才能使它工作?

全部谢谢

2 个答案:

答案 0 :(得分:3)

如果您查看生成它的html,将会是这样的:

<input type="button" value="Get Answer" onclick="con(".$first.", ".$last.")" />

您可以看到哪些不正确。

您的代码存在一些问题,首先,变量名称,如$ first,如果它们在单引号内,则不会被评估为它们的值。

尝试:

echo '<input type="button" value="Get Answer" onclick="con("'.$first.'", "'.$last.'")" />';

这将输出:

<input type="button" value="Get Answer" onclick="con("Butter", "Last")" />

仍然不正确,因为您没有正确地将参数传递给您的javascript函数。

尝试:

echo '<input type="button" value="Get Answer" onclick="con(\''.$first.'\', \''.$last.'\')" />';

应该输出

<input type="button" value="Get Answer" onclick="con('Butter', 'Last')" />

希望有效:)

答案 1 :(得分:0)

这是您的解决方案

JavaScript代码:

function con(first, last) {
answer= first+last;
alert(answer);
return;}

PHP和HTML代码:

<?php
 $first = "Butter";
 $last = "Last";
 echo '<input type="button" value="Get Answer" onclick=con("'.$first.'","'.$last.'") />';?>

当你通过php将值传递给javascript函数时,你必须传递'single quote'或“double quote”中的值,如onclick = con(“'。$ first。'”,“'。$ last。' “);