我正在使用link_to img标签,如下所示
<%= link_to image_tag("Search.png", :border=>0, :class => 'dock-item'),
:action => 'search', :controller => 'pages'%><span>Search</span></a>
Run Code Online (Sandbox Code Playgroud)
这导致以下html
<a href="/pages/search"><img alt="Search" border="0" class="dock-item"
src="/images/Search.png?1264132800" /></a><span>Search</span></a>
Run Code Online (Sandbox Code Playgroud)
我希望class ="dock-item"转到<a>标签而不是img标签.
我怎么能改变这个?
更新:
<%= link_to image_tag("Search.png", :border=>0), :action => 'search',
:controller => 'pages', :class => 'dock-item' %>
Run Code Online (Sandbox Code Playgroud)
结果是
<a href="/pages/search?class=dock-item"><img alt="Search" border="0"
src="/images/Search.png?1264132800" /></a>
Run Code Online (Sandbox Code Playgroud)
Sta*_*len 135
嗨你可以尝试这样做
link_to image_tag("Search.png", border: 0), {action: 'search', controller: 'pages'}, {class: 'dock-item'}
Run Code Online (Sandbox Code Playgroud)
甚至
link_to image_tag("Search.png", border: 0), {action: 'search', controller: 'pages'}, class: 'dock-item'
Run Code Online (Sandbox Code Playgroud)
请注意,花括号的位置非常重要,因为如果你错过了它们,rails会假设它们形成一个哈希参数(在这里阅读更多相关信息)
link_to(name, options = {}, html_options = nil)
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你!=)
Sta*_*ers 27
只需添加link_to一个块即可传递方法:
<%= link_to href: 'http://www.example.com/' do %>
<%= image_tag 'happyface.png', width: 136, height: 67, alt: 'a face that is unnervingly happy'%>
<% end %>
Run Code Online (Sandbox Code Playgroud)
结果是:
<a href="/?href=http%3A%2F%2Fhttp://www.example.com/k%2F">
<img alt="a face that is unnervingly happy" height="67" src="/assets/happyface.png" width="136">
</a>
Run Code Online (Sandbox Code Playgroud)
当设计师给我复杂的链接以及奇特的css3翻转效果时,这已经成为一种生命保护.
小智 18
最好的将是:
link_to image_tag("Search.png", :border => 0, :alt => '', :title => ''), pages_search_path, :class => 'dock-item'
Run Code Online (Sandbox Code Playgroud)
这是我的解决方案:
<%= link_to root_path do %>
<%= image_tag "image.jpg", class: "some class here" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
简单:
<%= link_to image_tag("Search.png", :border=>0), :action => 'search', :controller => 'pages', :class => 'dock-item' %>
Run Code Online (Sandbox Code Playgroud)
的第一个参数的link_to是text/html的链接(里面一个标签).下一组参数是url属性和链接属性本身.