从php调用参数化的javascript函数

时间:2012-06-07 08:22:43

标签: php javascript

我需要通过在php变量中传递值来从php调用javascript函数。我的代码是这样的:

echo '<tr class="trlight"><td onclick="callVehicle('.$qry_vehicleid.');"><label>Call Vehicle</label>&nbsp;</td></tr>';

在javascript文件中,我尝试执行以下代码:

function callVehicle(vid)
{
alert('Call '+vid);
document.getElementById("SearchResult").style.visibility="hidden";
}

发生错误test is not definedtest是我分配给变量$qry_vehicleid的值。有人可以指出错误是什么吗?

3 个答案:

答案 0 :(得分:1)

尝试在插入的PHP变量周围添加引号。

echo '<tr class="trlight"><td onclick="callVehicle(\''.$qry_vehicleid.\'');"><label>Call Vehicle</label>&nbsp;</td></tr>';

答案 1 :(得分:1)

你错过了几个引号,你回应的是:

<td onclick="callVehicle(test);">

你想要的是:

<td onclick="callVehicle('test');">

因为test是一个字符串参数。你的代码应该是:

echo '<tr class="trlight"><td onclick="callVehicle(\''.$qry_vehicleid.'\');"><label>Call Vehicle</label>&nbsp;</td></tr>';

答案 2 :(得分:1)

将PHP代码更改为

echo '<tr class="trlight"><td onclick="callVehicle('.json_encode($qry_vehicleid).');"><label>Call Vehicle</label>&nbsp;</td></tr>';

如果您尝试使用已经包含引号的值,那么在您的值周围添加引号会在某些时候咬你。