parseFloat, double, toFixed(2), jquery keypress format number double
parseFloat, double, toFixed(2), jquery keypress format number double
HTML
<input type="input" id="preco-1" maxlength="10" />
CSS
[id^=preco]{border:1px solid #000; text-align:right;}
[id^=preco]:hover{background:cyan;}
body{background:#272822;}
JavaScript
$(document).on('keypress', '[id^=preco]', function(e) {
if (validateNumberDouble(e) == false) {
return false;
}
});
function validateNumberDouble(event) {
var n = event.key;
k = event.keyCode;
v = event.target.value;
if (k === 8 || k === 37 || k === 39 || k === 9 || k === 13) {
return true;
} else {
var dot = v.split('.').length;
if ((dot > 1 && n == '.') || (v.length == 0 && dot >= 1 && n == '.')) {
return false;
} else {
if (n.match(/[^0-9.]/)) {
return false;
}else{
if(v.indexOf('.')>0 && v.length - v.indexOf('.')>=3){
return false;
}
}
}
}
}