Bagaimana saya bisa menambahkan placeholder
teks ke f.text_field
bidang saya sehingga teks datang pra-ditulis secara default, dan ketika pengguna mengklik di dalam bidang, teks hilang - memungkinkan pengguna untuk mengetik teks baru?
Bagaimana saya bisa menambahkan placeholder
teks ke f.text_field
bidang saya sehingga teks datang pra-ditulis secara default, dan ketika pengguna mengklik di dalam bidang, teks hilang - memungkinkan pengguna untuk mengetik teks baru?
Jawaban:
Dengan rel> = 3.0, Anda cukup menggunakan placeholder
opsi.
f.text_field :attr, placeholder: "placeholder text"
f.text_field :attr, :placeholder => "placeholder text"
Bagi mereka yang menggunakan Rails (4.2) Internasionalisasi (I18n):
Setel atribut placeholder menjadi true:
f.text_field :attr, placeholder: true
dan di file lokal Anda (mis. en.yml):
en:
helpers:
placeholder:
model_name:
attr: "some placeholder text"
placeholder: true
. Setelah pengaturan seperti yang Anda gambarkan itu berhasil.
Berikut ini sintaks yang lebih bersih jika menggunakan rails 4+
<%= f.text_field :attr, placeholder: "placeholder text" %>
Jadi rails 4+
sekarang bisa menggunakan sintaks ini bukan sintaks hash
Saya mencoba solusi di atas dan sepertinya pada rails 5. * agumen kedua secara default adalah nilai dari form input, yang bekerja untuk saya adalah:
text_field_tag :attr, "", placeholder: "placeholder text"
Di templat tampilan Anda, tetapkan nilai default:
f.text_field :password, :value => "password"
Di Javascript Anda (dengan asumsi jquery di sini):
$(document).ready(function() {
//add a handler to remove the text
});
onfocus="if(this.value=='Search The Huffington Post')this.value=''" value="Search The Huffington Post"
Sepertinya pendekatan yang bagus.