我有一个用户必须填写社会安全号码的字段。
如果用户出生日期是1990年11月14日
社交安全始于90.11.14-XXX.XX(X代表随机数0-9)
我正在使用simple_form
<%= f.input :ssn,
label: t('employee.social_security_no'),
input_html: { placeholder: "XX.XX.XX - XXX.XX" }%>
我想实现以下目标:
1)如何使用90.11.27-_ _ _预设输入字段。 _ _
2)并验证其余5个数字实际上是数字
3)并限制该字段,以便用户无法填写超过5个额外数字。
非常感谢帮助我上路的任何帮助。
答案 0 :(得分:1)
我不确定你真正想要达到的目标,但你可以这样做:
1)预设'value'选项,如下所示。(但用户应自行删除'_'字符)
powershell.exe
2)在服务器端使用正则表达式检查数字格式,因此在模型中添加这些行。 (这使用XX.XX.XX-XXX.XX验证整个ssn格式)
<%= f.input :ssn,
label: t('employee.social_security_no'),
input_html: { value: "#{@user.birthdate.strftime('%y.%m.%d')}-___.__" },
maxlength: 15
%>
3)'maxlength'选项限制输入字段中要填充的数字的长度。