我试图在点击后将这个按钮隐藏在ruby中,这样它就不会再显示出来并且用户认为他们的请求没有通过。我只是希望这个可点击一次然后从页面中删除而不仅仅是禁用
<% if @ride_request clicks %>
<%= link_to "Book Ride", :controller => "/request", :action => "book", :id => @ride.id %>
答案 0 :(得分:1)
考虑使用disable_with
,哪个IIRC适用于link_to
和提交按钮:
http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to
答案 1 :(得分:1)
你可以在控制器特定的.js文件中使用这个javascript(jQuery)
$(document).ready(function() {
$('#replace_id').click(function (){
$(this).hide();
});
});
您现在需要做的就是添加对象的ID并将其替换为replace_id
。
答案 2 :(得分:0)
你可以尝试jQuery&#39; element.hide()
http://api.jquery.com/hide/#hide
或者你可以切换css&#39;该按钮的display:none
或者您可以尝试jQuery&#39; element.remove()
http://www.w3schools.com/jquery/html_remove.asp
答案 3 :(得分:0)
你的问题实际上是关于JS,而不是Rails。
您必须记住Rails是一个服务器端框架,这意味着它接收来自前端的请求,然后为您处理响应。这意味着前端的任何UX东西都需要用JS来处理
为此,您最好使用Javascript的$("element").remove();
功能:
$(document).on("click", "element", function(){
$(this).fadeOut(150, function() {
$(this).remove();
});
});
这会将按钮淡出,然后将其从DOM中删除