在rails密码字段标记的ruby中显示占位符文本

din*_*urW 2 ruby ruby-on-rails

在Ruby on Rails中,我有这条线

<td><%= text_field_tag(:email, "email") %></td>
Run Code Online (Sandbox Code Playgroud)

它将"电子邮件"这个词放在应该发送电子邮件的框中.这正是我想要的,因为它节省了空间.但是,当我这样做时:

<td><%= password_field_tag(:password, "password") %></td>
Run Code Online (Sandbox Code Playgroud)

文字只是一堆点.我希望文本说出密码,但是当用户填写它时我想要点出现.Facebook完全符合我的要求https://www.facebook.com.

有人可以告诉我如何在密码字段框中明显地写出"密码"这个词,但是当用户真正填写密码时,密码会出现点缀?

mea*_*gar 10

您需要设置placeholder属性,而不是value属性:

<td><%= password_field_tag(:password, "", placeholder: "Password") %></td>
Run Code Online (Sandbox Code Playgroud)

您应该为您的电子邮件字段执行相同的操作.不要设置元素的值,设置占位符并让浏览器专门将其呈现为占位符.

无论您是通过脚本设置还是用户键入密码字段,密码字段的实际文本值将始终显示为点或星号.