我已经搜索过逃避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)
答案 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>'