问题:input框中加入输入规则,如 e.detail.value = e.detail.value.replace(/\.{2,}/g, ".")
e.detail.value = e.detail.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3')但是这种用replace的效果不好,因为是等到用户输入后再进行判断,能否实现当用户输入当时候,如果输入的不对,就不让用户输入了,就不会有之前闪烁的感觉
3 回答
POPMUISE
TA贡献1765条经验 获得超5个赞
test.onkeypress = function (e) { const newString = this.value + String.fromCharCode(e.keyCode); function testSomething(newString, keyCode) { // 在这里对输入的字符或者输入框中的内容进行判断 return keyCode > 100; } if (testSomething(newString, e.keyCode)) { return true; } return false; }
LEATH
TA贡献1936条经验 获得超6个赞
你的思路有一点问题,你怎么知道用户输入会是什么,如果不等用户输入了,拿什么来判断?
所以必须是有用户输入了,结果不符合要求进行处理(比如这里删除掉2个以上的点)。
后面是保留2位小数。
添加回答
举报
0/150
提交
取消