我不知道为什么但是我得到了一个有效JSON的Parse错误(我在jsonlint上检查过它)。
我使用php从mysql数据库中获取数据并将其设为json字符串并将其转换为jquery(请参阅下面的代码)
这是jquery:
$.ajax({
type: "GET",
url: "controller.php",
data: {action:"loadObjs"},
dataType: "json",
contentType: "application/json; charset=utf-8",
async: true,
success: function(objs){
//do stuff
},
error:function (xhr, ajaxOptions, thrownError){
document.write(ajaxOptions);
document.write(thrownError);
docmuent.write(xhr);
}
}
这是controller.php的一部分:
<?php
if (isset($_GET['action'])){
$action = $_GET['action'];
echo var_dump($action);
if ($action == "altaObj") {
echo addObj();
} else if ($action == "bajaObj") {
// delObj();
} else if ($action == "modObj") {
// modObj();
} else if ($action == "loadObjs") {
echo loadObjs();
} else if ($action == "loadObjProps") {
}
}
function loadObjs() {
$objs = Obj::GetAll();
return json_encode($objs);
}
?>
这是Obj类中的GetAll():
public static function getAll(){
$return = array();
try{
$sql = "SELECT objectId, name FROM objs";
$result = db::executeQuery($sql);
while (false != ($r = mysql_fetch_object($result))) {
$foo = new Obj($r->objectId, $r->name);
//$foo->objectName = $r->objectName;
$return[] = $foo;
}
return $return;
}catch (Exception $e){
return $e->getMessage();
}
}
感谢。
答案 0 :(得分:0)
这是echo var_dump($ action);
谢谢x4rf41