Wie kann ich placeholder
meinen f.text_field
Feldern Text hinzufügen , sodass der Text standardmäßig vorab geschrieben wird. Wenn ein Benutzer in die Felder klickt, wird der Text ausgeblendet, sodass der Benutzer den neuen Text eingeben kann.
ruby-on-rails
NullVoxPopuli
quelle
quelle
Antworten:
Mit Schienen> = 3.0 können Sie einfach die
placeholder
Option verwenden.quelle
f.text_field :attr, :placeholder => "placeholder text"
In Rails 4 (mit HAML):
quelle
Für Benutzer von Rails (4.2) Internationalisierung (I18n):
Setzen Sie das Platzhalterattribut auf true:
und in Ihrer lokalen Datei (dh en.yml):
quelle
placeholder: true
. Nachdem Sie das so eingestellt haben, wie Sie es beschrieben haben, hat es funktioniert.Hier ist eine viel sauberere Syntax, wenn Sie verwenden
rails 4+
So
rails 4+
kann nun diese Syntax verwendet anstelle der Hash - Syntaxquelle
Ich habe die obigen Lösungen ausprobiert und es sieht aus wie auf Schienen 5. * Das zweite Argument ist standardmäßig der Wert des Eingabeformulars. Was für mich funktioniert hat, war:
quelle
Legen Sie in Ihrer Ansichtsvorlage einen Standardwert fest:
In Ihrem Javascript (unter der Annahme, dass hier abgefragt wird):
quelle
onfocus="if(this.value=='Search The Huffington Post')this.value=''" value="Search The Huffington Post"
Scheint ein guter Ansatz zu sein.