簡體   English   中英

在小數點Javascript之前和之后追加值

[英]Append values before and after decimal point Javascript

我在表單上有數字字段,用戶可以偶爾鍵入帶小數位的十進制值,但一側沒有值。 即輸入的預期值可以是5或5.00但有時用戶可以鍵入.5 OR 5.所以在這種情況下,如果他們在小數位之前省略了值,我想添加/附加0.5或者值如果他們遺漏了小數位后的值,我想用5.00添加/追加

.5 => 0.5
5. => 5.00

理想情況下,輸入值將在Blur上更新,或者當用戶單擊/標簽遠離該字段或頁面上的任何其他位置時。 我對此的快速嘗試目前如下(未經測試)

$('input').on('blur', function () {

  var currentValue = $(this).val();

  var splitNumber = currentValue.split('.');
  var beforeDecimal = splitNumber[0];
  var afterDecimal = splitNumber[1];

  if (beforeDecimal.length < 1)
  {
    //add one zero before decimal
  }

  if (afterDecimal.length < 1)
  {
    //add two zeros after decimal
  }

});

相反,您可以使用parseFloattoFixed的組合

parseFloat('.5') --> 0.5
parseFloat('5.') --> 5

 $('input').on('blur', function() { let value = this.value; if(!isNaN(value)) { let parsedValue = parseFloat(value); $('.output').text(parsedValue.toFixed(2)); } }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <input type="text" /> <span>Output: </span> <span class="output"> </span> 

以下示例可以幫助您:

  var myNum1 = .5; var myNum2 = 5.; function pad(num){ return num.toFixed(2); } console.log(pad(myNum1)); console.log(pad(myNum2)); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM