2010-09-29 29 views
2

我开始将jQuery UI CSS Framework用于应用程序,这意味着我必须开始向所有内容添加类。所以,例如,我想让所有按钮都是jQuery主题,这意味着要向所有按钮添加一个类。修改Rails帮助程序以添加HTML类

我想在Rails中有一些方法可以修改帮助程序,所以我不必手动为每个按钮添加一个:class => 'blah',但我无法解决这个问题。这是可能的,还是有人有更好的想法?

回答

5

你只需要重写这个类中添加辅助方法。在你的application_helper.rb中

def button_to(name, options = {}, html_options = {}) 
    super(name, options, html_options.merge(:class => 'blah')) 
    end 
+0

看起来有点递归给我... – Skilldrick 2010-09-30 06:49:24

+0

是的,用超级代替。我编辑我的答案 – shingara 2010-09-30 06:58:55

+0

太好了,那就是我一直在寻找的东西 - 谢谢! – Skilldrick 2010-09-30 08:54:26

3

为什么不使用jquery,财产以后这样的:

$('button').attr('class', 'blah'); 
+0

实际上这并不是一个坏主意。当然,在Rails中必须有一个简单的方法来做到这一点。 – Skilldrick 2010-09-29 21:38:48

+0

我已经做了一些更多的阅读,看起来这可能是最明智的答案 - 它看起来不像一个简单的任务来覆盖帮助方法。除非我今天获得基于Rails的解决方案,否则我会将其标记为已接受。 – Skilldrick 2010-09-30 07:06:28

+0

我最终走到了这条路线 - 辅助方式有太多的边缘情况,而且我也没有用佣工编写我的所有HTML。 jQuery方式通过一种技术将它全部保存在一个地方。虽然我并不认为我可以将其作为公认的答案,因为另一个答案是我实际问到的问题。不过谢谢! – Skilldrick 2010-09-30 20:50:18