Comment puis-je ajouter du placeholder
texte à mes f.text_field
champs afin que le texte soit pré-écrit par défaut, et lorsqu'un utilisateur clique à l'intérieur des champs, le texte disparaît - permettant à l'utilisateur de taper le nouveau texte?
ruby-on-rails
NullVoxPopuli
la source
la source
Réponses:
Avec des rails> = 3.0, vous pouvez simplement utiliser l'
placeholder
option.la source
f.text_field :attr, :placeholder => "placeholder text"
Dans Rails 4 (avec HAML):
la source
Pour ceux qui utilisent Rails (4.2) Internationalisation (I18n):
Définissez l'attribut d'espace réservé sur true:
et dans votre fichier local (ie. en.yml):
la source
placeholder: true
. Après avoir réglé cela comme vous l'avez décrit, cela a fonctionné.Voici une syntaxe beaucoup plus claire si vous utilisez
rails 4+
Vous
rails 4+
pouvez donc maintenant utiliser cette syntaxe au lieu de la syntaxe de hachagela source
J'ai essayé les solutions ci-dessus et cela ressemble à des rails 5. * le deuxième agument par défaut est la valeur du formulaire d'entrée, ce qui a fonctionné pour moi était:
la source
Dans votre modèle de vue, définissez une valeur par défaut:
Dans votre Javascript (en supposant jquery ici):
la source
onfocus="if(this.value=='Search The Huffington Post')this.value=''" value="Search The Huffington Post"
Cela semble être une bonne approche.