我想将php
数组传递给jQuery
函数
我尝试将数组发送为json_encode
,如下所示:
<button onclick='callFunction(<? echo json_encode($myArray); ?>)'></button>
我的json_encode数组的结果是:
{"Date":"2018-01-26 12:55:00","Details":"FORLI IT"}
一切都很好。
但是如果我有这样的数组(带'
)
{"Date":"2018-01-26 12:55:00","Details":"FORLI' IT"}
我的功能不再起作用了 - 我的控制台会显示:
SyntaxError:意外的EOF
我该如何解决这个问题?
答案 0 :(得分:1)
尝试使用addslashes,
<button onclick='callFunction(<? echo json_encode(addslashes($myArray)); ?>)'></button>
答案 1 :(得分:1)
我建议你处理任何与HTML有关的方法是:
ST_
检查http://php.net/manual/en/function.htmlentities.php
上的所有可用标记这个使用标志<button onclick='callFunction(<? echo htmlentities(json_encode($myArray),ENT_QUOTES); ?>)'></button>
,因为默认行为是仅编码双引号。使用ENT_QUOTES
也会对单引号进行编码。