簡體   English   中英

千位逗號分隔符問題僅最后 3 位正在驗證

[英]Thousand comma separator issue only last 3 digit is validating

我嘗試在鍵入時將文本框中的數字轉換為逗號分隔值,但只采用最后一個值。

<script type="text/javascript">

   function addCommas(nStr) {
        nStr += '';
        x = nStr.split('.');
        x1 = x[0];
        x2 = x.length > 1 ? '.' + x[1] : '';
        var rgx = /(^\d{2})|(\d{1,3})(?=\d{1,3}|$)/g;
        while (rgx.test(x1)) {
            x1 = x1.replace(rgx, '$1' + ',' + '$2');
        }
        return x1 + x2;
   }


</script>

這是 HTML 文件:

<asp:TextBox ID="txtbudamt" runat="server" CssClass="text_box" Height="22px" Width="140px" onkeyup="this.value=addCommas(this.value);"    onkeydown="return (event.keyCode!=13);" AutoComplete="Off" TabIndex="7"></asp:TextBox>
  • 當我輸入數字直到 9999 時,它會給出正確的輸出,如 9,999
  • 當我選擇 10000 時,它會給出 1,0,000

為此,您可以簡單地使用toLocaleString 大多數瀏覽器也支持它。

function addCommas(nStr) {
   return parseFloat(nStr).toLocaleString('en-GB');
}

暫無
暫無

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

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