2

我对这个问题发疯了,不知道出了什么问题。我想要做的是一个简单的 AJAX 调用,以从数据库中获取当前菜单的图像和缩略图的 URL。我的对象文字中有一个函数,如下所示:

infoBlink: function() {
        $.ajax({
            url: 'ajax.php',
            type: 'post',
            dataType: 'json',
            data: {
                'menu_id' : $(".activeMenu").attr('id')
            },
            error: function(xhr, error){
                console.log(xhr); 
                console.log(error);
            },
            sucess: function(data){
                console.log("success");
                console.log(data);
            },
        });
        console.log("menu_id: " + $(".activeMenu").attr('id'));
    },

它引用了一个带有以下代码的 php 文件:

require_once('fns/classes/graphics.php');

if(isset($_POST['menu_id']) && !empty($_POST['menu_id'])) {
        $menu_id = $_POST['menu_id'];
        $gfx = new Graphics();
        $result = $gfx->getForId($menu_id);
        echo json_encode($result);
    }

然后使用位于另一个文件中的 Graphics 类中的函数:

public function getForId($menu_id)
{
    $query = $this->db->prepare("select * from graphics where menu_id=? ");
    $query->bindParam(1, $menu_id);
    if ($query->execute()) {
        return $query->fetchAll(PDO::FETCH_OBJ);
    }
}

现在问题是,我自己测试了 ajax.php,它完美地从数据库返回了所有需要的数据,例如:

[{"id":"4","menu_id":"2","name":"logo_v2_vert.jpg","url":"images\/logo_v2_vert.jpg","thumbnail_url":"images\/thumbnails\/logo_v2.jpg"}]

,但是当我使用 AJAX 时,绝对没有任何反应。错误和成功回调都没有被执行,什么都没有。任何帮助将非常感激。

4

1 回答 1

2

一个快速的错字导致了这一切。您success在 AJAX 调用中拼写错误。改变:

sucess: function(data){
    console.log("success");
    console.log(data);
},

至:

success: function(data){
    console.log("success");
    console.log(data);
},
于 2013-06-19T18:47:48.567 回答