输入框限制输入小数点后两位小数
发布于 5 年前 作者 bsu 9066 次浏览 来自 问答

如输入12.25   小数点俩位后就不可在输入

5 回复

input 中 disabled 设置为 false?

谢谢了,那如何让他在界面上显示输入俩位后就禁止输了

解题思路:

1,有一个属性,可以控制输入框的输入长度:maxlength;2,把关注点放到输入完小数点后的第二位,而不是第三位。

解决方案:

a, 判断是否有小数点;

b,小数点后是不是已经出现了两位小数,就是比较字符串的长度和indexOf(".")+3是不是相等;

c, 如果相等,设置该输入框的maxlength为字符串的长度。

tips:记得要实时恢复manlength。

其实这个解决方案最主要就是依靠动态控制maxlength的值,来实现不能继续输入的效果。

不能继续输入,但是input又没有失焦,也没有disabled掉。

是这样的,我这个输入框,可以多次输入,不能有多个点,不能以点开头,输入俩位后就不能输入了,最多就可以点后边俩位,然后可以多次输入,给input设disabled ,让他不可用就点不了啊

var value = e.detail.value
    console.log(value)
    var dot = value.indexOf('.')
    if(dot > -1){
      if(value.length > (dot+3)){
        console.log("禁止输入")
      }
    }

这样吗?

回到顶部