如何正确处理 Rails 4 中的远程链接?杰森
How do I properly handle a remote link to in Rails 4? JSON?
我有以下代码:
= link_to "#{icon('heart')} Props".html_safe, vote_picture_path(picture), class: 'tiny radius secondary button vote', method: :put, remote: true
这是在这里:
# VOTE /pictures/1.json
def vote
respond_to do |format|
if @picture.toggle_vote(current_user)
format.json { render json: @picture }
else
format.json { render json: @picture }
end
end
end
我正在尝试做的是通过以下方式更新图片上的总票数:
$ ->
$(".vote").on "ajax:success", (e, data, status, xhr) ->
vote_count_size = $(".vote-count .size").html()
vote_count_size_integer = parseInt(vote_count_size)
console.info data
然而,让我感到困惑的部分是 console.info 数据。它似乎从我无法说出的来源返回了一些东西。我正在编辑/pictures/show.json.jbuilder,但它不会影响来自数据的内容。我想返回一个包含数据中总票数的 json 结构,以便我可以从成功回调更新页面上的计数。
首先,你的respond_to
块可以大幅重构:
# VOTE /pictures/1.json
respond_to :json
def vote
@picture.toggle_vote(current_user)
respond_with @picture
end
这应该为您的 @picture
var 返回一个 JSON 对象。您必须详细说明您在console
中获得的数据?如果您提供您收到的数据,这将是一个巨大的帮助!
你应该用一个javascript文件(vote.js.erb)来回应 在这个你可以混合JavaScript和ERB表达式来改变所需的页面元素:
$('.vote-count .size').html('<%=@picture.vote_count%> votes');
您的控制器如下所示:
# VOTE /pictures/1.js
def vote
respond_to do |format|
@picture.toggle_vote(current_user)
format.js
end
end
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 如何使用jQuery自动打开页面上的所有链接
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- jquery动画可以通过编程链接吗
- 在单击href链接的同时下载文件
- 尽管链接成功并已成功下载,但未找到NPM模块
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- ReactJS映射:如何仅在url变量不为空时呈现html链接
- 单击页面上的链接后高度发生变化
- 将纯文本URL转换为可单击链接
- python-selenium-点击上升链接
- 一点javascript元编程&可链接的设置器
- ng视图外的链接重定向到ng视图内的页面
- 如何调用“;链接_;在onclick事件上使用Javascript
- 链接所有<a>Meteor
- 如何在Angular中的表的所有单元格中添加链接
- 通过链接重定向不;我不在jstree中工作
- 根据选项卡内部的文本链接中的哈希ID动态选择jqueryUI选项卡
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 如何正确处理 Rails 4 中的远程链接?杰森