- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在我的 Rails 4 应用程序上使用 acts_as_votable。
我已将其设置为通过 ajax 请求获得赞成票/反对票。我想实现一个提示,或者里面有一个文本框的确认,所以当用户对一篇文章投反对票时,会显示一个弹出窗口,他们可以输入他们投反对票的原因。
我很难找到有关这样做的任何类型的文档。有人有什么建议吗?
这是我当前的 Controller 代码:
def upvote
@article = Article.find(params[:article_id])
@subarticle = @article.subarticles.find(params[:id])
session[:voting_id] = request.remote_ip
voter = Session.find_or_create_by(ip: session[:voting_id])
voter.likes @subarticle
respond_to do |format|
format.html {redirect_to :back }
format.json { render json: { count: @subarticle.get_upvotes.size } }
end
end
def downvote
@article = Article.find(params[:article_id])
@subarticle = @article.subarticles.find(params[:id])
session[:voting_id] = request.remote_ip
voter = Session.find_or_create_by(ip: session[:voting_id])
voter.dislikes @subarticle
respond_to do |format|
format.html {redirect_to :back }
format.json { render json: { count: @subarticle.get_downvotes.size } }
end
end
和 View 内部:
<%= link_to like_article_subarticle_path(@article, @subarticle), class: "voteup", method: :put, remote: true, data: { type: :json } do %>
<button type="button" class="btn btn-success btn-lg" aria-label="Left Align" style="margin-right:5px">
<span class="glyphicon glyphicon-thumbs-up" aria-hidden="true"></span> Helpful
</button><div class="badge" style="margin-right:10px"><%= @subarticle.get_upvotes.size %></div>
<% end %>
<script>
$('.voteup')
.on('ajax:send', function () { $(this).addClass('loading'); })
.on('ajax:complete', function () { $(this).removeClass('loading'); })
.on('ajax:error', function () { $(this).after('<div class="error">There was an issue.</div>'); })
.on('ajax:success', function(e, data, status, xhr) { $(this).find("div").text("+1"); });
</script>
<%= link_to dislike_article_subarticle_path(@article, @subarticle), class: "votedown", method: :put, remote: true, data: { type: :json } do %>
<button type="button" class="btn btn-danger btn-lg" aria-label="Left Align" style="margin-right:5px">
<span class="glyphicon glyphicon-thumbs-down" aria-hidden="true"></span> Unhelpful
</button><div class="badge"><%= @subarticle.get_downvotes.size %></div>
<% end %>
<script>
$('.votedown')
.on('ajax:send', function () { $(this).addClass('loading'); })
.on('ajax:complete', function () { $(this).removeClass('loading'); })
.on('ajax:error', function () { $(this).after('<div class="error">There was an issue.</div>'); })
.on('ajax:success', function(e, data, status, xhr) { $(this).find("div").text("-1"); });
</script>
感谢您的帮助。一段时间以来一直在努力寻找一种方法来做到这一点。
最佳答案
正如您希望它作为一个弹出窗口,您最好的选择是触发一个模态点击 link_to
<%= link_to dislike_article_subarticle_path(@article, @subarticle), class: "votedown", method: :put, remote: true, data: { type: :json, toggle: "modal", target: "#my-modal" } do %>
<button type="button" class="btn btn-danger btn-lg" aria-label="Left Align" style="margin-right:5px">
<span class="glyphicon glyphicon-thumbs-down" aria-hidden="true"></span>
Unhelpful
</button>
<div class="badge"><%= @subarticle.get_downvotes.size %></div>
<% end %>
并包含一个表单,其中包含一个text_field/text_area
,供用户添加反对票的原因。
<div class="modal hide fade" id="my-modal" title="My modal">
<div class="modal-header">
<button aria-hidden="true" class="close" data-dismiss="modal" type="button">×</button>
<h3 id="myModalLabel">Modal header</h3>
</div>
<div class="modal-body">
Modal Body
#your form goes here
</div>
<div class="modal-footer">
<button aria-hidden="true" class="btn" data-dismiss="modal">Close</button>
</div>
</div>
如果您不喜欢这种方法,您也可以使用fadeIn/fadeOut 或hide/show 显示包含 text_field/text_area
的form,但您不会看到那个弹出窗口 影响那些。
关于ruby-on-rails - 在 Downvote Rails 4 上充当投票提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31552644/
如果没有子类化dict,一个类需要被认为是一个映射,以便它可以通过**传递给一个方法。 from abc import ABCMeta class uobj: __metaclass__ =
所以。我正在研究 PHP/MySQLi atm,为此我正在做一个电影数据库。我是 PHP 新手,我已经在网上搜索了 3 天有同样问题的人,但我没有找到任何东西。 我的问题是我需要一个编辑按钮,这样就可
我的代码是这样的: void some_func(void *source) { ... double *casted = reinterpret_cast(source);
我无法准确理解 array_splice 和 array_slice 的作用。据我所知,array_splice 应该在取出某些元素后返回一个数组,而 array_slice 应该检索数组的一部分。
我从数据库中检索了 54 项: items = Item.where(condition) items.count == 54 and then: items.each {|i| i.tag_list
我在 HTML 表单中有一个简单的图像,充当按钮。当单击普通按钮时,我会使用 onClick 属性对其进行操作,但是对于我的图像,当您单击它们时,onClick 会起作用,但图像也会提交表单,而实际上
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this qu
我正在使用一个名为 acts_as_votable 的 gem让我的模型可以投票。 目前一切正常。 但是每次有人为帖子投票时,页面都必须刷新。如何在不刷新页面的情况下进行投票。我可以添加一个简单的 j
我的 bootstrap 3 页面在第一次页面加载时仅显示一个 div。当我单击“打开下一个 block ”按钮时,会显示另一个 div,如果我单击第二个 div,则会显示第三个 div。这样我总共可
我主要对 感兴趣 a11y 方面 因此,您可能知道,有时您可能希望有一个用作 anchor 的按钮。 这些是解决这个问题的 4 种方法(我能想到): 1. anchor 元素内的按钮 Button 2
在我的 main.storyboard 中,我有一个 UIImage View ,它只是一个通用的 Facebook 登录按钮。但是,我很困惑,因为使用这些通用步骤 override func vie
问题 我有这个 bash 脚本: ACTIVE_DB=$(grep -P "^[ \t]*db.active" config.properties | cut -d= -f2 | tr -s " ")
我目前正在使用 inline-block instead of floats 构建一个使用漂亮网格结构的站点. 简而言之,我的网格是这样工作的(JSFiddle) : HTML
我最近开始使用 Bootstrap 并且没有遇到任何问题,除了我遇到的这个问题。我已经使用它建立了自己的个人网站,并将其设计为响应式的,到目前为止,它在所有方面看起来都很棒。 但我遇到的问题是,从 9
这是一个不幸的问题,但我看不到任何其他解决方法。 基本上,我使用 Kendo UI 面板栏来创建可扩展列表。问题是,当您使用 作为子列表,面板栏功能不起作用。 fiddle 示例: http://js
我正在尝试获取一个 16 位长的数字 0x1122334455667788 并将其移位以说明小端编号。 使用下面的示例代码从内存单元中加载数字 void endianCompute(memory_t
我目前正在使用一堆输入文本字段,我想将其更改为 DIV,但我的大部分 JS 函数都使用 document.getElementById("inputField1").value每当输入字段的值设置如下
是否可以使用 HTML5 (或任何其他元素)就像一个 iframe,但内容是从它的子元素而不是从 URL 加载的?例如,如果您要在主文档中进行此设置: 以及foo.html的内容是: 主文档会显
我正在尝试使用 EJB session Bean 的示例。我想看看他们的区别。我的基本项目图如下; http://img109.imageshack.us/img109/8262/85220418.p
我们公司有一个项目,现在使用 nginx 作为反向代理来提供静态内容和支持 comet 连接。我们使用长轮询连接来摆脱不断的刷新请求,让用户立即获得更新。 现在,我知道已经为 Node.js 编写了很
我是一名优秀的程序员,十分优秀!