<input type="text" value="" id="test">
<script>
test.oninput = test.onkeyup = inputFloat;
function inputFloat() {
this.value = this.value.replace(',', '.');
if (this.value != '-' && !isFinite(this.value)) {
this.value = parseFloat(this.value) || this.value.slice(0, -1);
}
}
</script>