2015-11-04 79 views
0

在我的UI中,我有一个项目表。每一行都有一个最喜欢的按钮。我正在使用按钮来进行轨道调用来添加数据库关联。Ruby on rails:Button_to检查发布结果并更新当前页面

我一直在调查如何检查我的按钮后调用的帖子响应的结果。

如果成功,我想禁用我的页面上的收藏按钮,如果它不,我什么也不想。有没有办法检查我的按钮中的帖子响应来打电话,有没有办法留在页面上?

继承人的我有什么

<%= button_to create_favorite_path(res.id), class: "favorite-btn-#{res.id} btn btn-default" do%> 
    <i class="glyphicon glyphicon-star-empty"></i> 
<% end %> 

回答

0

停留在页面上,当你点击按钮的样本,你需要添加remote: true到您的按钮调用。这会使你的按钮默认请求一个AJAX调用。

Read more about the button_to helper here

<%= button_to create_favorite_path(res.id), remote: true, class: "favorite-btn-#{res.id} btn btn-default" do%> 
    <i class="glyphicon glyphicon-star-empty"></i> 
<% end %> 

然后看到这个AJAX请求的响应,你需要编写一些JavaScript。

在你application.js,或者你有此页面上的任何JavaScript文件:

$(document).on('ajax:success', 'form', function(event, data, status, xhr) { 
    // do something with data or status 
}); 

Read more about working with javascript in Rails here

+0

谢谢!所以要在帖子中回应,我加上正确的回应? – Sakib

+0

您需要响应按钮在您的'favorites_controller'中按下 – yez