当rails控制器返回200 OK时,不会触发jquery ajax成功回调

pat*_*ick 2 jquery ruby-on-rails

我正在做一个标准的ajax请求,我有一个rails控制器动作:

def up_vote
  resource.votes.increment!
  render :nothing => true
end
Run Code Online (Sandbox Code Playgroud)

这不会触发我的jquery ajax成功回调---它会触发statusCode:200回调,但我想使用成功而不是那个.铁路渲染文档说用"头",而不是渲染:没什么=> true,所以我试着做头:OK,但导致同样的结果.

如何使此方法触发成功回调?

Mik*_*tak 6

我在使用head :okRails 3.2 的样式响应时遇到了同样的问题.我通过更改dataType: "json"dataType: "text"我的$.ajax通话中来修复它.

如果您指定想要JSON响应,jQuery似乎不会调用成功回调,但返回的数据不会验证为JSON.

这个问题给了我提示我需要弄清楚:jQuery.ajax成功回调函数没有执行


Fer*_*rio 5

我通过渲染json响应来修复此错误.render :json => { :success => "success", :status_code => "200" }