0

所以我试图用jquery(coffeescript)来做这个ajax请求,但是我遇到了回调函数的问题,它告诉我“数据”是未定义的,但有时,当我重新编写代码时,它没有t 给我一个控制台错误,而是什么都不做。我知道请求通过了,因为 rails 可以很好地处理请求,但是发送回信息可能会出现问题,所以我也会包含我的控制器代码。非常感谢您的帮助。

submit_yes = ->
par = $(this).parent().parent()
event_id = par.find('#event_id').val()
time_module_id = par.find('#time_module_id').val()
$.ajax
  type: "PUT",
  url: '/events/'+event_id+'/add_yes_rsvp?' + par.find('#time_module_id').serialize(),
  data: JSON.stringify({ _method:'put' })
  success: (data) ->
    alert data
    update_score(par.parent())
return true

def add_yes_rsvp
  @event = Event.find(params[:id])
  TimeModule.find(params[:time_module_id]).add_yes_rsvp(current_user)
  respond_to do |format|
    format.json {render json: { error: false }}
  end
end
4

1 回答 1

1

请求的可用格式和内容类型不匹配。你基本上有三个选择:

  1. 使用 $.ajax 的“accepts”设置将请求标头内容类型设置为“json”
  2. 将 .json 添加到您请求的网址的末尾
  3. 将 format.json 更改为 format.js
于 2013-03-29T00:29:28.157 回答