Ruby on rails 在Rails3+;中禁用链接到标记;

Ruby on rails 在Rails3+;中禁用链接到标记;,ruby-on-rails,Ruby On Rails,我使用了以下代码: <%= link_to image_tag("edit.png", :alt => "Edit"), edit_user_path(user) %> “编辑”),编辑用户路径(用户)%> 我想禁用此链接和图像,因此我在代码中添加了:disabled=>true,但它没有禁用。为什么不能,我如何禁用它们?与按钮不同,超链接不能“禁用”。但是,假设页面中包含jQuery,则可以执行以下操作: <%=link_to image_tag("edit.png

我使用了以下代码:

<%= link_to image_tag("edit.png", :alt => "Edit"), edit_user_path(user) %>
“编辑”),编辑用户路径(用户)%>

我想禁用此链接和图像,因此我在代码中添加了
:disabled=>true
,但它没有禁用。为什么不能,我如何禁用它们?

与按钮不同,超链接不能“禁用”。但是,假设页面中包含jQuery,则可以执行以下操作:

<%=link_to image_tag("edit.png", :alt=>"Edit"), edit_user_path(user), :id => "mylink" %>
1) 一种解决方案是,当您不希望链接时,只渲染image_标记,当您希望启用链接时,使用link_to。可以使用实例变量来控制要渲染的内容

2) 或者按照建议使用Javascript


如果要动态执行,请使用2。

您可以使用条件链接来:

<%=
 link_to_if(@current_user.nil?, "Login", { :controller => "sessions", :action => "new" }) do
   link_to(@current_user.login, { :controller => "accounts", :action => "show", :id => @current_user })
 end
%>
“sessions”,:action=>“new”})do
链接到(@current\u user.login,{:controller=>“accounts”,:action=>“show”,:id=>@current\u user})
结束
%>

我不确定@lamrin想问这个问题,但我想是这样的:

<%= link_to_if condition?, image_tag("edit.png", :alt => "Edit"), edit_user_path(user) %>
此链接也可能有助于此方法:


在回答您的问题时,Rails中的link_to helper没有:disabled选项,它也不是元素的有效属性。我相信人们在Rails中容易混淆这一点的原因是:如果使用引导,则“:disabled=>true”确实有效。所以要解决这个问题,你可以遵循Gupta的方法,或者只添加引导(这也会给你一些默认的CSS,这样人们在点击链接时不会感到沮丧)

回复:链接到rails中的方法:)

关于:元素上的“禁用”属性:


Re:Bootstrap“disabled”类或带有Bootstrap的属性:

因为问题和答案都被否决了,所以我认为这是错误的方法。任何一个有更多经验的人能提出为什么所有事情都被否决吗?不能说为什么被否决,但可能是因为它们不是简单的答案。Disabled不会禁用超链接--因此您需要一个条件链接或JavaScript来执行禁用操作。使用此选项禁用所有禁用的链接--$('a[Disabled]')。单击(函数(e){e.preventDefault();})@拉姆林,这回答了你的问题吗?您正在使用RubyonRails,只是希望能够将“:disabled=>true”添加到此代码中,对吗?如果您还有什么需要帮助的,请告诉我!对锚定标记上有效属性的引用非常有用!很高兴它有帮助@SergioA。!以下是Bootstrap 4的更新参考:
<%= link_to_if condition?, image_tag("edit.png", :alt => "Edit"), edit_user_path(user) %>
link_to_unless disabled, (content_tag :div, "", :class => "vote " + vote_class, :title => title), resource_user_path({ :id => resuser.id, :resource_user => {:id => resuser.id, :resource_id => resource_id, :user_id => current_user_id, :vote => vote_value}}), :remote => true, :method => http_method