dataType:“ json”不起作用
我正在尝试使用数组中的json将多个变量从php文件发送回ajax。php文件中的代码可以完美运行,并且可以对数据库进行所有操作。但是,一旦我在ajax中添加dataType:“
json”,php文件中就什么也没有发生。我在Google上搜索了一下,有人说这可能是浏览器问题,但到目前为止,它在Firefox,Chrome或IE中均不起作用。我正在使用最新版本的jQuery。
这就是php内部发生的情况:
<?php//Create variables and update database
echo json_encode(array("id" => "$realid", "un" => "$username", "date" => "$date"));
?>
这是ajax代码:
.ajax({
url: 'UpdateComments.php',
type: 'POST',
dataType: "json",
data:
{
type: "add",
comment: $("#comment").val(),
id: videoID
},
success: function (data)
{
//Get the data variables from json and display them on page
}
});
我对此一无所知,任何建议将不胜感激!
回答:
常见的问题是浏览器在JSON之前打印“其他内容”,无论它是可读还是 (不可见)字符。尝试做这样的事情:
<?php//at the very beginning start output buffereing
ob_start();
// do your logic here
// right before outputting the JSON, clear the buffer.
ob_end_clean();
// now print
echo json_encode(array("id" => $realid, "un" => $username, "date" => $date));
?>
现在,所有补充数据(JSON之前的数据)都将被丢弃,您应该让它正常工作…
以上是 dataType:“ json”不起作用 的全部内容, 来源链接: utcz.com/qa/425382.html