"john@example.com" %> 因此,人们可以使用电子邮件键盘而不是 ASCII 键盘在 iPhone 上输入电子邮件。-6ren">
gpt4 book ai didi

html - text_field 的类型属性

转载 作者:搜寻专家 更新时间:2023-10-31 22:23:45 25 4
gpt4 key购买 nike

我有这个代码:

<%= f.text_field :email, :type => "email", :placeholder => "john@example.com" %>

因此,人们可以使用电子邮件键盘而不是 ASCII 键盘在 iPhone 上输入电子邮件。但是,输出是:

<input id="user_email" name="user[email]" placeholder="john@example.com" size="30" type="text" />

应该是:

<input id="user_email" name="user[email]" placeholder="john@example.com" size="30" type="email" />

我也想要 tel 类型,这样人们就可以得到电话号码键盘。

有没有办法强制 Rails 使用 email 类型而不是 text,或者我必须直接使用 HTML?谢谢

最佳答案

用当前的助手 (http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html) 不可能做到这一点“返回为访问指定属性而定制的“文本”类型的输入标签...”

我会写一个助手来让你的代码更漂亮。您可以只使用所需的 HTML 和选项编写一些内容,或者您​​可以添加一些内容以使用 FormBuilder,如下面的代码片段。

module ActionView
module Helpers
class FormBuilder
def tel_field(method, options = {})
InstanceTag.new(@object_name, method, self, options.delete(:object)).to_input_field_tag("tel", options)
end
end
end
end

关于html - text_field 的类型属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2566740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com