【发布时间】:2015-03-25 18:20:38
【问题描述】:
我在整个项目中使用 json_encode 没有问题,除了一个实例。
我从一个页面进行 ajax 调用,就像我在其他页面中所做的那样,生成的 json 出于某种奇怪的原因将 1 附加到字符串的末尾。
我的返回字符串是这样的
{
"overtime": "yes"
}1
这可能是什么原因造成的?我已经从字面上注释了返回此字符串的类中的所有内容,并且我只有以下代码。
$reservation = ['overtime' => 'yes'];
return json_encode($reservation, JSON_PRETTY_PRINT);
我的 ajax 请求如下所示
$.ajax({
type: 'POST',
url: "{{ URL::action('Controllers\\PurchasesController@calculateReservation') }}",
data: { 'arrive' : arrive, 'depart' : depart},
dataType: 'json',
success: function(response) {
alert(response);
}
});
警报不会触发,也不会显示任何内容,因为 json 无效,字符串末尾附加了 1。
【问题讨论】:
-
根据我的经验,我通常会
echo回复,而不是return。尝试这样做,如有必要,之后立即致电die()。这有帮助吗? -
哇。是的,成功了,谢谢!很奇怪,因为我只是简单地在我的项目的其余部分返回 json_encode,没有任何问题。
标签: javascript php jquery ajax json