2016-12-03 12 views
0

Я только начинаю изучать AJAX. Моя текущая функция ajax, похоже, не имеет никакого эффекта.Обновление модели Rails с помощью AJAX

Вот функция от моего CoffeeScript файла:

if $('.clickySeat').length > 0 
    $('.clickySeat').on "click", -> 
     goobergonk = $(this).find(".presentTag") 
     aulaId = $(this).attr('id') 
     url = '/aulas/update/?ref='+aulaId 
     if goobergonk.text() == "Absent" 
      attendance = true 
      $(this).removeClass("absent") 
      goobergonk.text("Present") 
     else 
      attendance = false 
      $(this).addClass("absent") 
      goobergonk.text("Absent") 
     $.ajax 
      type: "POST", 
      url: url, 
      dataType: "json", 
      data: {present: attendance}, 
      success: alert(aulaId) 

«Aulas» модель, которая присоединяется к «Student» и стола «Семинар» (я использовал слово «семинар», потому что я хотел чтобы избежать слова «класс»). Здесь я храню данные посещаемости как логические. Моя цель для этой функции заключается в том, что когда пользователь нажимает на div, представляющий студент-студент (класс «clickySeat»), таблица обновляется для отслеживания присутствия ученика. Чтобы помочь ajax-вызову найти правильную строку, я попытался присвоить каждому div id своей соответствующей аулы. Предупреждающее сообщение «Успех» указывает, что функция получает идентификатор для правильной аулы. Но когда я использую консоль rails для проверки значения в столбце «present», он не изменился.

Этот код включает «? Ref =» как часть идентификатора URL-адреса, поскольку это следует за большинством примеров, которые я видел на других сайтах. Я также пробовал версию без этого бита.

Я уверен, что здесь отсутствует синтаксис синтаксиса ajax.

Заранее благодарю за понимание.

ответ

0

Кажется, сейчас работает. Мне нужно было установить синтаксис моих данных:

 $.ajax 
      type: "PUT", 
      url: url, 
      dataType: "json" 
      data: 
       aula: 
        id: aulaId 
        present: attendance