2011-03-20 54 views
1

我怎么会变成这个按钮:将一个按钮变成一个jQuery UI图标?

<%= button_to "+1", video_votes_path(:video_id => video.id, :type => "up"), :remote => true %> 

成jQuery用户界面提供的图标?

我尝试添加类的吧:

<%= button_to "+1", video_votes_path(:video_id => video.id, :type => "up"), :class => 'ui-icon-triangle-1-n', :remote => true %> 

,但是这创造了一个怪异的按钮仍然有“+1”它里面。

我把这个代码在我的application.js文件:

$('input:submit, input:reset').each(function(){ 
     $(this).replaceWith('<button type="' + $(this).attr('type') + '">' + $(this).val() + '</button>'); 
    }); 

    $('button:submit').button({ 
     icons: { 
     secondary: 'ui-icon-triangle-1-n' 
     } 
    }); 
+0

带有URL的图标?或者只是一个图标? – JohnP 2011-03-20 05:31:26

+0

只是从jQuery UI的图标 – 2011-03-20 05:31:59

+0

我假设你还想将按钮上的任何触发器转换为图像?不知道RoR,但为什么不看看生成的HTML并用JQ抓取? – JohnP 2011-03-20 05:33:40

回答

0

button_to实际上生成表单中输入的元素。 jQuery UI仅支持提交和重置类型的输入,因此请查看生成的标记是否属于该类别。

至于一个实际的解决方案,你可以尝试转换输入到按钮标签。看看this

+0

我试过了,转换后的代码工作正常,但是我无法显示图标...相反,jQuery样式中会出现一个随机按钮。为什么是这样?我再次检查以确保我包含了所有内容...... – 2011-03-20 06:04:05

+0

您是否包含将图标分配给'submit'和'reset'按钮的代码部分? – 2011-03-20 06:25:41

+0

是啊,看问题的细节,看看我已经放在我的application.js文件/ – 2011-03-20 06:33:59