Ruby on rails 通过原型请求提交表单导致';“以…开头”;要显示的对话框

Ruby on rails 通过原型请求提交表单导致';“以…开头”;要显示的对话框,ruby-on-rails,ajax,prototypejs,Ruby On Rails,Ajax,Prototypejs,我使用HAML创建了一个表单,通过以下方式提交: $('appt_form').request({ onComplete: function(){ ... } }) 为了进行测试,我让控制器简单地返回: render :json => {:name => "Ted"}.to_json 但这会导致浏览器启动一个对话框,其中包含“打开时使用…”或“另存为…”选项 我有其他从AJAX调用并返回json的方法,它们使用 req = new Ajax.Re

我使用HAML创建了一个表单,通过以下方式提交:

$('appt_form').request({
    onComplete: function(){ 
        ...
    }
})
为了进行测试,我让控制器简单地返回:

render :json => {:name => "Ted"}.to_json
但这会导致浏览器启动一个对话框,其中包含“打开时使用…”或“另存为…”选项

我有其他从AJAX调用并返回json的方法,它们使用

req = new Ajax.Request('/mycontroller/')

但我不知道第一种情况有什么不同。想法?

我猜从服务器返回的mime类型是浏览器希望保存的文件,这就是您看到该对话框的原因

这可能是因为从第一种类型的请求中发送的Accept标头带有损坏的mime类型,而不是从第二种类型发送的。查看是否可以在日志中看到不同的请求