2013-06-19 2 views
2

Я схожу с этой проблемой и понятия не имею, что не так. То, что я пытаюсь сделать, это простой вызов AJAX для получения URL-адресов изображений и миниатюр для текущего меню из базы данных. У меня есть функция внутри моего объекта буквальной, как это:нет ответа от AJAX

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); 
    } 

, который затем использует функцию из графика класса, проживающая в другом файл:

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 абсолютно ничего не происходит. Ни ошибка, ни обратный вызов успеха не выполняются, просто ничего. Любая помощь будет высоко оценена.

+0

Вы используете поджигатель или консоль разработчика? Что он должен сказать? – phpisuber01

+0

Я использую консоль Chrome, дело в том, что она ничего не говорит. Он регистрирует все, что я надел обработчик событий, который запускает функции (которые были нажаты для целей тестирования), но ничего из самого ajax. – Nicolas

+6

Надеюсь, это не проблема, но «успех» ошибочен в вызове AJAX. – tymeJV

ответ

2

Быстрая опечатка вызвала все это. У вас success неправильно написано в вашем звонке AJAX. Изменение:

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

To:

success: function(data){ 
    console.log("success"); 
    console.log(data); 
}, 
Смежные вопросы