我在Chrome和Opera上的JSON问题持续了好几天,我设法解决了一些错误,但是现在我陷入了困境,找不到出路。我用PHP创建了一些数组,用JSON编码,然后将其发送到javascript文件中,在此进行进一步处理。在Firefox中一切正常,但在Chrome和Opera中$.post()
则永远不会调用该功能。我认为当javascript需要接收JSON数据时,它会停止工作。非常需要您的帮助。
这是我的javascript函数:
var updateGroup = function(id){
$("#unshareTable").html("");
passID = id;
$.post("getData.php", {'id' : id}, function(obj){
globalColor = obj.color;
$("#updateGroupTitle").val(obj.title);
$("#updateColorpickerHolder").css("background-color", obj.color);
$("#updateColorHex").html(obj.color);
var color2 = lighterColor(obj.color, .4);
$("#updateColorHex2").html(color2);
$("#updateGroupDescription").html(obj.description);
$("#unshareTable").append("<tr id='firstRowUnshare'><td>Username</td><td>Option</td></tr>");
$.post("getUnshareData.php", {'title' : obj.title}, function(obj1){
var length = obj1.length;
for(var i = 0; i < length; i++){
$("#unshareTable").append("<tr><td class='unshareUsername'>"+obj1[i].username+"</td><td><label class='unshareOneButton'>Unshare</label></td></tr>");
}
}, "json");
}, "json");
$(".updateGroupDiv").fadeIn(300);
}
和简单的PHP脚本
<?php
$id = clean($_POST['id']);
$query = $mysqli->query("select * from groups where id_group = '$id'");
$data = $query->fetch_assoc();
echo json_encode($data);
?>
同样在Chrome中,我得到这些错误:
Uncaught TypeError: Cannot call method 'getURL' of undefined
Uncaught TypeError: Cannot read property 'onRequest' of undefined
在您的PHP中,将以下内容添加到第一行(在您的开始标记之后)
header("Content-Type: text/javascript; charset=utf-8");
将响应指定为JSON
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句