使用keyup jquery的错误掩码?

时间:2017-10-28 18:22:58

标签: jquery

我在模式中有ìnput type=text和maxleng = 3,我的结果完美1,78,但解决方案错误打印值= 1,00这是我的代码:



$("#field").keyup(function() {
  var valor = parseFloat(this.value.match(/[0-9]*/));
      $("#field").val(valor.toFixed(2).replace('.',','));
  });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="field" type="text" pattern="([0-9]{3})"/>
&#13;
&#13;
&#13;

当值为123时,如何设置1,23

1 个答案:

答案 0 :(得分:1)

你的问题。是“当值为1,23时如何制作123?”如果我没有错,你正在寻找这个解决方案

$("#field").keyup(function() {
  $("#field").val(this.value.replace('.',''));
  $("#field").val(this.value.replace(',',''));
  
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="field" type="text" pattern="([0-9]{3})"/>

确定。对于这个问题“输入值是123,输出值是1,23?”

$("#field").keyup(function() {
    var valor = parseFloat(this.value.match(/[0-9]*/));
    if (this.value.length==3){
      var s = this.value.slice(0, 1) + "," + this.value.slice(1, 3) ;
      $("#field").val(s);
    }
   
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <input id="field" type="text" pattern="([0-9]{3})"/>