如何在jQuery小数点后自动填充0(零)?

时间:2018-08-29 07:07:04

标签: jquery regex

如何在jQuery小数点后的后面自动填充0(零)?就像用户插入的数字不足一样,它将在后面自动填充零(0)。

示例: 用户插入-0.12345 然后它必须加到-0.12345000

我尝试过的事情:

这是我尝试的方法,但是我只知道如何设置点符号只能在文本字段中插入一次。

Future<String> getPresentationData() async {
listScoringAttributeObjects = new List<ScoringAttribute>(); // clear data
var responseScoringAttribute = await http.get(
  Uri.encodeFull(urlScoringAttribute),
  headers: {"Accept": "application/json"}
);

1 个答案:

答案 0 :(得分:0)

您可以使用toFixed(n),也可以使用blurchange事件而不是keyup,因为当每次输入值不断变化时,用户在输入值时可能会遇到麻烦输入

$(function(){
  var specialKeys = new Array();
  specialKeys.push(46); // allow dot which has keyCode = 46 in specialKeys

  $("#Lat,#Lng").on("blur change",function (event) {
    $(this).val(parseFloat($(this).val() || 0).toFixed(8));
  });

  //on keypress you can restrict only number and some special characters
  $("#Lat,#Lng").on("keypress", function (e) {
    var keyCode = e.which ? e.which : e.keyCode;
    var ret = ((keyCode >= 48 && keyCode <= 57) || specialKeys.indexOf(keyCode) != -1);
    return ret;
  });
   
  // restrict copy paste
  $("#Lat,#Lng").on("paste drop", function (e) {
      return false;
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="Lat">
<input id="Lng">