`

Rails link_to 详解

阅读更多

例子: 
代码: 

<%= link_to "Issues", {:controller => "issue", :action => "index"}, {:title => "Issues"} %>

  
事实上,html元素的属性都可以通过这样的方式来设置。比如添加一个click事件处理: 
代码: 

<%= link_to "Issues", {:controller => "issue", :action => "index"}, {:onclick => "alert(1)"} %> 

 
但是值得注意的就是,link_to 的第二个参数,必须是以 map 的形式给出,才能达到这样的效果。link_to 是 rails 默认提供的工具方法,它还有一个过载的方法,如 
代码: 

<%= link_to "Issues", "index", {:onclick => "alert(1)"} %> 

 
上面的代码显示的连接将为 "/xxxxx/controller/index?onclick=alert(1)" 
所以如果第二个参数以字符串的形式给出,此时其后的参数,就变为queryString了。 
那么如何实现又增加 click 事件处理,又增加url参数呢,很简单, 如下: 
代码: 

<%= link_to "Issues", {:controller => "posts", :action => "new", "name" => "kk","tid" => "2013434"}, :onclick => "alert(1)" %>

  

结果为: 

<a href="/posts/new?name=kk&tid=2013434" onclick="alert(1)">Issues</a>

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics