0
在我的设计注册表中,我添加了一个需要占用12位数的新字段。为了防止输入非数字,我使用了问题8481132中的jquery解决方案,它可以工作。导轨形式:如何限制输入字段中的字符数(数字)
用于限制到12位,我使用的maxlength如下:
<div class="field">
<%= f.label :vat_no, "VAT" %><br/>
<%= f.number_field :vat_no, :maxlength => 12 %>
</div>
生成的HTML是
<div class="field">
<label for="user_vat_no">VAT</label><br>
<input maxlength="12" size="12" type="number" value="" name="user[vat_no]" id="user_vat_no">
</div>
看起来确定。但我的浏览器(MacBook上的Safari)很高兴地允许任意数量的数字。
检查http://caniuse.com/以确定该属性是否可用于您正在使用的操作系统版本。您可能需要创建一个js函数来限制输入的字符数。 – margo
您正在使用哪种safari版本?根据此它被修复在9 - http://stackoverflow.com/questions/27319642/is-there-a-workaround-for-text-input-maxlength-not-working-in-safari – Tasos
@Tasos我的Safari版本是9.0.3 – user1575148