Jquery 屏蔽返回 Float/Int 值

Jquery Masking returning Float/Int Value

如何返回使用 jquery 屏蔽插件屏蔽的输入的原始值?

在这种情况下,我使用的是货币货币掩码。如果我使用 jQuery 获取值,它返回字符串,而不是 float/int.

我怎样才能把它恢复到原来的价值?

$(document).ready(function() {
 $('.money').mask('000.000.000.000.000,00', {reverse: true});
  var mon = $('.money').val();
  console.log(mon);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.11/jquery.mask.min.js"></script>

<input type="text" class="money" value="30000">

您需要对该元素调用 .cleanVal()。阅读 this link 以编程方式获取屏蔽值 部分。

$(document).ready(function() {
 $('.money').mask('000.000.000.000.000,00', {reverse: true});
  var mon = $('.money').cleanVal();
  console.log(mon);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.11/jquery.mask.min.js"></script>

<input type="text" class="money" value="30000">

文本框总是 return 字符串值。您必须根据需要使用 parseInt()parseFloat() 手动将其解析为数字。

您可以尝试使用parseFloat(string)函数

$(document).ready(function() {
 $('.money').mask('000.000.000.000.000,00', {reverse: true});
  var mon = parseFloat($('.money').val());
  console.log(mon);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.11/jquery.mask.min.js"></script>

<input type="text" class="money" value="30000">