我开发的,我想在给定的要求,即是下面要格式化的数字一个网站:转换号码的按键或钥匙上或钥匙浮点下来
- 如果我按“1”应该是“1”。
- 如果我按“12”,应该说“12”。
- 如果我按“123”应该说“1.23”。
- 如果我按“1234”,应该说“12.34”。
- 当我按下退格键时,这个顺序也应该起作用。
我已经开发了它在我自己的是如下:
function Maskme(obj, evt) {
var event = (window.event) ? window.event : evt;
var str = document.getElementById("txtamt");
if (event.keyCode != 8 && event.keyCode != 13) {
if (str.value.length == 3 && str.value.indexOf(".") == -1) {
var val = parseFloat(str.value);
var val1 = (val/100).toFixed(2);
str.value = val1;
}
else if (str.value.length > 3) {
var val = parseFloat(str.value) * 1000;
var val1 = (val/100).toFixed(2);
str.value = val1;
}
else {
str.value = str.value;
}
}
else {
if (event.keyCode != 13) {
var str1 = parseFloat(str.value)/10;
if (str1 != 0 && !isNaN(str1))
str.value = (str1).toFixed(2);
else
str.value = "";
}
}
}
,但我有问题,那就是:
- 如果我迅速按下“123”,它说“12.30 “或”12.3“而不是”1.23“
- 回到1.23后退格也不起作用
- 允许在文本中输入最多7位数字f ield
如果有任何现成的插件可用或任何人已经开发了这种插件,那么请告诉我,我会很感激。
您的代码在3点失败 – mplungjan 2012-02-23 10:37:51
是的,我们对此深感抱歉,改变 – 2012-02-23 10:51:01
上述方案后,我工作正常修改它一点点,但我也忘了发布第三个问题,最多7位数字是允许进入文本领域,所以你可以请能够做到这一点..? – 2012-02-23 13:08:34