ruby-on-rails – 如何使用rails remote:true参数与JSON?
在使用rails remote:true参数提交ajax请求时,如何指定我想要返回
JSON对象?一旦
JSON对象被返回,我如何抓住并使用它?
解决方法
根据您的具体情况,有很多方法可以回答(例如:您正在使用jquery和UJS适配器),但是我将使用自己的文档发布文章,以更好地了解整个过程:
我在很大程度上使用这个伟大的 post:我会更新我的答案,因为我目前正在通过这个东西自己做. 您可以将数据类型属性添加到DOM元素中,如下所示: <%= link_to "Add a new task",new_project_task_path(@project),"data-type" => "json",:id => "add_task_btn" %> 您还可以在jQuery的全局$.ajaxSetup()函数中定义默认的dataType.更改所有Ajax请求: $.ajaxSetup({ dataType: 'json' }); 而第三种方式是在beforeSend回调中: $(“#add_some_button”).live(“ajax:beforeSend”,function(e,xhr,settings){ new_data_type = “application/json,text/javascript,*/*; q=0.01”; xhr.setRequestHeader('accept',new_data_type); }) (q = 0.01是0和1之间的偏好) 因此,您可以更改该数据类型属性和HTTP标头以满足您的需要. 而具体的javascript媒体类型列表:Here 从服务器发送的数据格式概述: 概述Ajax可以在Rails 3.1中使用的方法: 我相信现在的首选方法是使用默认的dataType作为脚本,然后使用js.erb或js.coffee文件处理AJAX请求. 选项: 再次,我包括在这里是我自己的大纲/审查,要获得详细信息,请查看安德烈·辛格的伟大的帖子here. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |