Html RubyonRails表单:如何将文本放入一个单击即消失的输入字段中
我想创建一个没有标签的表单,而是将方向放在实际的输入文本字段中。我还希望在单击文本字段时方向消失 这里有一个例子 我知道,在html中,您可以这样做Html RubyonRails表单:如何将文本放入一个单击即消失的输入字段中,html,ruby-on-rails,ruby-on-rails-3,forms,Html,Ruby On Rails,Ruby On Rails 3,Forms,我想创建一个没有标签的表单,而是将方向放在实际的输入文本字段中。我还希望在单击文本字段时方向消失 这里有一个例子 我知道,在html中,您可以这样做 <input type="text" name="s" id="s" value="Text to be displayed here" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.de
<input type="text" name="s" id="s" value="Text to be displayed here" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;"/>
但是如何使用rails表单帮助程序来实现这一点呢
这是我到目前为止所拥有的
<div class="row">
<div class="small-12 columns">
<div class="panel">
<%= form_for(@message) do |f| %>
<%= f.label :body, "Description" %>
<%= f.text_area :body %>
<%= f.submit 'Create message', class: 'button small secondary' %>
<% end %>
</div>
</div>
</div>
我想尝试一下占位符属性,它只适用于较新的浏览器,但有一些jQuery库会自动检测不支持它的占位符,并执行与您的javscript代码段大致相同的操作。以下是使用占位符字段的示例:
<%= f.text_field :field_name, :placeholder => "Disappearing Text" %>
“正在消失的文本”%>
编辑:这里有一个可靠的jQuery回退插件:
在html中,输入中的前置文本称为
占位符
属性
您可以将该属性添加到循环字段的表单中,如下所示:
<%= f.text_field :some_data, :placeholder => "value" %>
“值”%>
但是,在执行占位符属性时,请注意,某些浏览器的旧版本并不完全支持占位符属性。因此,通常需要一些JS来polyfil此功能…如果您不在输入字段旁边使用传统标签,您应该注意支持此功能