使用冒号在函数中表示字符串

时间:2012-05-10 07:23:47

标签: php javascript

我正在使用一个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."')

但它不起作用......任何人都可以提出解决方案吗...

2 个答案:

答案 0 :(得分:1)

使用json_encode正确创建转义字符串:

onclick="status($itemid, $storeid, '.json_encode($status).")";

这需要PHP 5.2.0并且$status的值是有效的UTF-8,但这些都不是问题。

答案 1 :(得分:1)

这应该有用(注意反斜杠以逃避引用)

<a class="blue" href="javascript:void(0);" onclick="status('.$itemid.','.$storeid.',\''.$status.'\')" >