有点困惑如何响应铁路3的远程link_to的...
我一直在使用轨道remote => true
。 jQuery中我使用'ajax:before'
和'ajax:success'
拿起页面上,并在控制器我下面对AJAX或HTML调用响应事件:有点困惑如何响应铁路3的远程link_to的...
format.html{
redirect_to xxxx_path
}
format.json {
render :json => { :something => true }
}
但是我似乎有很多的问题,把远程真实的链接。
当我把远程真正的链接,在控制器如果我做formal.json(下同)没有获取的触发对此作出回应:
format.json {
render :json => { :something => true }
}
,如果我做的:
format.js{ }
...在控制器中有一个在jQuery中的响应。但是,不调用'ajax:success'
事件,只调用'ajax:complete'
,这是不正确的。
我想知道如何在rails 3中设置远程链接,如果链接是远程或只是普通的html调用,我都可以在控制器中做出不同的响应。所以回应json的远程链接和正常的html。我如何让jquery选择'ajax:success'响应。我对这一切如何运作感到困惑。
谢谢!
您能缩小提问码吗?
在上面的'ajax:before'应该是'ajax:beforeSend'。
在你的控制器,你可以测试是否请求是AJAX或不喜欢的东西
if request.xhr?
render nothing: true
else
redirect_to @your_object
end
您应该格式添加到您的远程链接,以确保控制器知道该怎么回答
:'data-type' => 'html'
我给链接添加了:'data-type'=>'json'。谢谢! – Smickie 2013-03-14 22:30:39
我想你需要在URL中指定格式json。
例如
<%= link_to some_path(format: :json, remote: true) %>
与'format.js'一起,你有'method.js.erb'视图来触发它吗? – Matt 2013-03-13 17:36:50