在Rails image_tag中创建自定义数据属性

时间:2015-09-30 02:08:52

标签: jquery ruby-on-rails

我目前正在尝试将自定义数据属性添加到R​​ails image_tag以允许我的jQuery运行。

首先,我开始使用像这样的image_tag:

<%= image_tag("randomv1.png", class: "icon js-icon") %>

其次,对于我的jQuery,我需要image_tag来触发一个事件,我希望它包含一个数据属性,就像我在一个按钮中使用的那样:

<button class="icon js-icon" data-icon-text="Random">Icon graphic</button> 

添加class属性很简单,但我还需要data-icon-text作为属性,以便在.hover之后显示数据。

基于this previous question,我尝试修改image_tag:

 <%= image_tag("randomv1.png", :class "icon js-icon" :data => { :icon-text => "Random" }) %>

由于这是一个错误,我可以创建该自定义属性吗?

2 个答案:

答案 0 :(得分:2)

尝试这样做:

您必须修改课程需要=>。然后,您必须将:icon-text更改为字符串"icon-text"

<%= image_tag("randomv1.png", :class => "icon js-icon", :data => { "icon-text" => "Random" }) %>

<%= image_tag("randomv1.png", :class => "icon js-icon", "data-icon-text" => "Random") %>

我希望这可以帮到你

答案 1 :(得分:0)

<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"> <script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <div id="dialog" title="Dialog"></div>不是有效的红宝石名称,只需使用:icon-text,rails会为您执行:icon_textmagic也会错过=>箭头}属性

class

您也可以使用与示例相同的格式:

<%= image_tag("randomv1.png", :class => "icon js-icon" :data => { :icon_text => "Random" }) %>

编辑(更正):

<%= image_tag("randomv1.png", class: "icon js-icon" data: { icon_text: "Random" }) %>