[英]JavaScript function with PHP variable as parameter
我搜索了有关在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)
您需要添加引号,您的param是字符串类型:
echo '<a class="btn btn-xs btn-danger" onclick="delete(\''.$fetch['bicc'].'\')"><span class="glyphicon glyphicon-remove"></span> Remove</a>'
您忘记了\\"
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>'
根据经验,如果要在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对应的变量(例如,为字符串添加引号)。
您应该添加引号,因为参数是字符串
echo "<a class=\"btn btn-xs btn-danger\" onclick=\"delete(\"${fetch['bicc']}\")\"><span class=\"glyphicon glyphicon-remove\"></span> Remove</a>";
$ fetch ['bicc']是否具有字符串类型值?
如是:
echo '<a class="btn btn-xs btn-danger" onclick="delete(\"'.$fetch['bicc'].'\")"><span class="glyphicon glyphicon-remove"></span> Remove</a>'
$data = str_replace('_', ' ', $fetch['bicc']);
echo '<a class="btn btn-xs btn-danger" onclick="delete('.$data.')"><span class="glyphicon glyphicon-remove"></span> Remove</a>'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.