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

时间:2016-11-02 10:40:32

标签: javascript php function

我已经搜索过逃避JS函数内部的参数,我已经尝试了很多建议,但都没有。这是代码:

echo '<a class="btn btn-xs btn-danger" onclick="delete('.$fetch['bicc'].')"><span class="glyphicon glyphicon-remove"></span> Remove</a>'

我总是收到这个错误:

SyntaxError: identifier starts immediately after numeric literal
delete(123456789_7_ZY7)

6 个答案:

答案 0 :(得分:0)

你需要添加引号,你的param是一个字符串类型:

echo '<a class="btn btn-xs btn-danger" onclick="delete(\''.$fetch['bicc'].'\')"><span class="glyphicon glyphicon-remove"></span> Remove</a>'

答案 1 :(得分:0)

您忘记了\"

onClick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a>

所以应该是这样的:

echo '<a class="btn btn-xs btn-danger" onclick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a>'

答案 2 :(得分:0)

根据经验,如果您想在JavaScript代码中使用PHP变量,则需要将它们包装在json_encode中:

echo '<a class="btn btn-xs btn-danger" onclick="delete('.json_encode($fetch['bicc']).')"><span class="glyphicon glyphicon-remove"></span> Remove</a>'

json_encode能够获取大多数PHP变量(字符串,数组,关联数组)并将它们正确编码为JavaScript副本(例如,为字符串添加引号)。

答案 3 :(得分:0)

您应该添加引号,因为参数是字符串

echo "<a class=\"btn btn-xs btn-danger\" onclick=\"delete(\"${fetch['bicc']}\")\"><span class=\"glyphicon glyphicon-remove\"></span> Remove</a>";

答案 4 :(得分:0)

$ fetch ['bicc']有字符串类型值吗?

如果是的话:

echo '<a class="btn btn-xs btn-danger" onclick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a>'

答案 5 :(得分:-1)

$data = str_replace('_', ' ', $fetch['bicc']);
echo '<a class="btn btn-xs btn-danger" onclick="delete('.$data.')"><span class="glyphicon glyphicon-remove"></span> Remove</a>'