1、.number修饰符

.number修饰符的本质操作是在input失去焦点时,用parseFloat()转换你输入的值,能成功解析的,都会转换成数学上有意义的数字,数据类型为Number,无意义的0都会被省略。而无法被 parseFloat() 解析(即 parseFloat(val) //NaN),则会返回原始的值,而且其类型仍然是String字符串类型。

所以,你只要运用.number修饰符,'000002257009088'就总会被转换。

2、检验规则 type:'number',

检验规则 type:'number',是判断数字类型的数据的,在没有.number修饰符的转换下,即使键入了一个“貌似”是数字的值(比如12),但其本质都是String字符串类型,所以你所有的输入都是会报错的。

所以type:'number'必须和.number修饰符一起使用,所以导致type:"number"也只能校验有实际数学意义的数字

3、基于以上两点,你这种,只能用自定义校验,正则表达式,当然你仍然可以在input标签上用原始的type="number"属性,这样可以保证值能键入数字

Logo

前往低代码交流专区

更多推荐