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

Using PHP variables as parameters for JavaScript function

我在处理这方面的引文时遇到了一些麻烦。因此,让我们举一个例子,发送我们想要通过变量连接的两个字符串,然后通过 JavaScript 函数 运行 连接它们(我知道这在 PHP 中非常基本,并且我知道该怎么做,我只是为了简单起见而使用这个例子。

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.")" />';
?>

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

谢谢大家

如果您查看正在生成的 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')" />

希望有用:)

这是您的解决方案

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("'.$首先。'","'.$最后。'");