【问题标题】:Rails - how to add an attribute to a text_field_tagRails - 如何将属性添加到 text_field_tag
【发布时间】:2014-01-15 08:00:45
【问题描述】:

我想给文本字段标签添加数据属性

<%= text_field_tag(:address) %>

产生

<input id="address" type="text" name="address") %>

使其具有HTML

<input id="address" type="text" name="address" data-clob="ccc") %>

所以我尝试了

<%= text_field_tag(:address, data:{clob: 'ccc'}) %>

但它是作为实际值而不是属性添加的,即

<input id="address" type="text" value="{:data=>{:clob=>"ccc"}}" name="address"></input>

即使对于我使用过的文本字段标签

<%= label_tag(:address, t("ui.reservations.between_now_and_param", 
param: @start_date.strftime(    time_format)), data:{blob: 'bbb'})%>

详见How to add HTML5 data- attributes to a rails form label tag?

如何将其添加为属性?

【问题讨论】:

    标签: html ruby-on-rails textfield custom-data-attribute


    【解决方案1】:

    答案是该值需要第二个参数,并且使用 "",, 不起作用,但使用 nil 确实 - 导致没有生成“value =”属性,例如

    <%= text_field_tag(:address, nil, data:{clob: 'ccc'}) %>
    

    虽然我需要看看如果这个表单在错误时重新显示是否有效......

    【讨论】:

      猜你喜欢
      • 2013-11-21
      • 2014-03-28
      • 2015-11-25
      • 2016-08-22
      • 1970-01-01
      • 2016-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多