Как я могу добавить текст placeholder
в мои поля f.text_field
, чтобы текст был предварительно написан по умолчанию, а когда пользователь нажимает внутри полей, текст уходит - это позволяет пользователю вводить новый текст
Ruby on Rails: Как добавить текст-заполнитель в f.text_field?
Ответ 1
С рельсами >= 3.0 вы можете просто использовать опцию placeholder
.
f.text_field :attr, placeholder: "placeholder text"
Ответ 2
В Rails 4 (с использованием HAML):
=f.text_field :first_name, class: 'form-control', autofocus: true, placeholder: 'First Name'
Ответ 3
Для тех, кто использует Rails (4.2) Интернационализация (I18n):
Установите для атрибута placeholder значение true:
f.text_field :attr, placeholder: true
и в вашем локальном файле (например, en.yml):
en:
helpers:
placeholder:
model_name:
attr: "some placeholder text"
Ответ 4
Вот гораздо более чистый синтаксис при использовании rails 4+
<%= f.text_field :attr, placeholder: "placeholder text" %>
Итак, rails 4+
теперь может использовать этот синтаксис вместо синтаксиса хэша
Ответ 5
В вашем шаблоне просмотра задайте значение по умолчанию:
f.text_field :password, :value => "password"
В вашем Javascript (предполагая jquery здесь):
$(document).ready(function() {
//add a handler to remove the text
});
Ответ 6
Я пробовал решения выше, и это похоже на рельсы 5. * Вторым фактором по умолчанию является значение формы ввода, что мне помогло:
text_field_tag :attr, "", placeholder: "placeholder text"