我正在使用一个存储字符的onclick函数
$itemid=1;
$storeid=3;
$status='rejected';
<a class="blue" href="javascript:void(0);" onclick="status('.$itemid.','.$storeid.','.$status.')" >
但是现在它显示了Firebug中的错误
rejected is not defined
status(1, 3, rejected);
我的感觉是它应该传递字符串 - 被拒绝为
status(1,3,'rejected')
我试图表示如下所示的功能
onclick="status('.$itemid.','.$storeid.','".$status."')
但它不起作用...任何人都可以为此提出解决方案吗?
这应该有效(注意反斜杠以转义引号)
<a class="blue" href="javascript:void(0);" onclick="status('.$itemid.','.$storeid.','''.$status.''')" >
使用 json_encode
正确创建转义字符串:
onclick="status($itemid, $storeid, '.json_encode($status).")";
这需要 PHP 5.2.0 并且 $status
的值是有效的 UTF-8,但这些都不是问题。