jQuery可以在用户输入数字时添加逗号吗?

     2023-02-23     108

关键词:

【中文标题】jQuery可以在用户输入数字时添加逗号吗?【英文标题】:Can jQuery add commas while user typing numbers? 【发布时间】:2011-02-07 14:37:19 【问题描述】:

当用户输入数字时,我将如何动态添加逗号?有没有好的数字格式化程序可以提供帮助?我必须稍后添加这些数字,所以我最终必须删除逗号。但屏幕需要显示逗号以提高可读性。

【问题讨论】:

所以等一下,您想在每个数字后添加一个逗号吗?所以我输入 123456 会变成 1,2,3,4,5,6?或者你只是用逗号替换空格? 作为 macek 的回答,他很可能想要添加数千个分隔符。 【参考方案1】:

运行代码 sn-p 看看它是否工作

$('input.number').keyup(function(event) 

  // skip for arrow keys
  if(event.which >= 37 && event.which <= 40) return;

  // format number
  $(this).val(function(index, value) 
    return value
    .replace(/\D/g, "")
    .replace(/\B(?=(\d3)+(?!\d))/g, ",")
    ;
  );
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<input class="number">

【讨论】:

你可以跳过在 keyup 函数中再次调用 jQuery,只需在整个过程中使用它。然后将 var num = $this.val().replace() 更改为 this.value.replace(),将 $this.val(num.replace()) 更改为 this.value = num.replace()。 @Bob,我感谢您的意见,但使用 jQuery 的方法以调用 $() 为代价在 jQuery 社区中被广泛接受。这就是 为什么 jQuery 首先拥有可用的方法。 我只是在尝试这段代码,在 Chrome 和 FF 中,它会将逗号错位 1 位。例如,“1234”->“1234”和“12345”->“1,2345” @Naveed(和所有人),早就应该这样做了,但我已经对这段代码进行了更新,使其更加可靠。正则表达式也得到了改进,以解决一些问题。这也允许用户按下退格键并且逗号仍然正确。 @maček 我该怎么做,包括小数位?【参考方案2】:

如果您不想使用 jQuery,这里是 @maček 在 vanilla JS 中的答案的实现:

var el = document.querySelector('input.number');
el.addEventListener('keyup', function (event) 
  if (event.which >= 37 && event.which <= 40) return;

  this.value = this.value.replace(/\D/g, '')
                         .replace(/\B(?=(\d3)+(?!\d))/g, ',');
);
&lt;input class="number"&gt;

【讨论】:

我这里只能输入4位数字,任何具体原因,因为我会超过4位数字,谢谢 只有在不需要插入小数的情况下才有效。【参考方案3】:
        <script>
        function costt()    
        var costs = document.getElementById('cost').value;   
            if(costs != '')           
     //   alert("ok");     
                cost.value = cost.value.replace(/\D/g, '').replace(/\B(?=(\d3)+(?!\d))/g, ',');
             else              
     //   alert("lol");     
                cost.value= 0;
                    
        
        </script>

【讨论】:

用户在输入框中输入小数点时逗号消失

】用户在输入框中输入小数点时逗号消失【英文标题】:Commasdisappearingwhenuserinputsadecimalpointinainputbox【发布时间】:2016-01-1514:48:49【问题描述】:我正在尝试通过jQuery实现一个代码,当用户将逗号输入到文本框中时,该代码会自... 查看详情

在 UITextField 中添加逗号作为用户类型的数值

】在UITextField中添加逗号作为用户类型的数值【英文标题】:AddingcommastonumbervaluesasusertypesintheUITextField【发布时间】:2016-12-1606:22:31【问题描述】:我对@9​​87654321@使用了一种更改方法,我想在用户输入数字时格式化UITextField。... 查看详情

我需要在键入时为数字添加逗号运算符并限制 2 位小数

...添加$123,123.12逗号格式并将小数点限制为两位,任何人都可以帮助regex。我试过这样。我现在有一个输入框,当我输入它时,它是1231244,但我需要像$123 查看详情

jQuery - 按回车键时添加逗号

】jQuery-按回车键时添加逗号【英文标题】:jQuery-Addcommawhenpressenterkey【发布时间】:2014-09-2409:36:58【问题描述】:我有一个文本区域,我想在其中输入关键字,并希望它在按Enter键后自动添加逗号,例如,您输入单词或句子然后... 查看详情

使用 jquery 从数组列表中添加和删除数组项

】使用jquery从数组列表中添加和删除数组项【英文标题】:Addandremovearrayitemsfromarraylistusingjquery【发布时间】:2020-05-0506:16:47【问题描述】:我想建立一个可以添加和删除用户的功能以逗号分隔的字符串存储在输入字段中,在html... 查看详情

添加逗号时如何更新此 jQuery 插件/正则表达式以忽略小数?

】添加逗号时如何更新此jQuery插件/正则表达式以忽略小数?【英文标题】:HowtoupdatethisjQueryplug-in/regextoignoredecimalswhenaddingcommas?【发布时间】:2011-12-2820:36:01【问题描述】:我正在使用以下jQuery插件来自动为数字添加逗号。问题... 查看详情

用户输入数字时,jquery验证不显示错误消息

】用户输入数字时,jquery验证不显示错误消息【英文标题】:jqueryvalidationdoesnotshowerrormessagewhenuserinputnumber【发布时间】:2021-06-0116:36:40【问题描述】:您好,我在使用jquery验证插件时遇到了这个问题。我试图只允许我的表单使... 查看详情

Python,我可以在while语句检查条件发生之前格式化用户输入吗?

】Python,我可以在while语句检查条件发生之前格式化用户输入吗?【英文标题】:Python,canIformatuserinputbeforeawhilestatementchecksforaconditiontohappen?【发布时间】:2021-03-0410:03:18【问题描述】:这是一个愚蠢的问题,但是:我需要一个代... 查看详情

在 javascript 或 jquery 中更改数字的逗号颜色

】在javascript或jquery中更改数字的逗号颜色【英文标题】:Changecommacolorofanumberinjavascriptorjquery【发布时间】:2015-10-0223:49:14【问题描述】:你有什么技巧可以改变数字中逗号的颜色,例如:1,850,358withtout将任何css类、样式或html分... 查看详情

如何将在一行中输入的以逗号分隔的数字放入Java中的数组中

...这种情况下我必须声明一个分隔符,即逗号“,”。有人可以帮忙吗谢谢【问题讨论】:【参考方案1】:Stri 查看详情

我们可以动态添加文本字段吗

】我们可以动态添加文本字段吗【英文标题】:Canweaddtextfielddynamically【发布时间】:2019-12-0217:10:07【问题描述】:我在我的聊天机器人中创建了一张自适应卡片(使用json),它接受用户的输入。我想添加一个按钮,使用户能够... 查看详情

在逗号分隔的字母数字正则表达式中添加空格

...上应用正则表达式,其中允许5位字母数字和空格,如果用户想要添加多个值,它们必须用逗号(,)分隔。所以对于单个值:k39Ka对于多个值:Kha93,0Lk3i,L9kK,lkhk到目前为止,我能够做到这一点 查看详情

带有逗号的 iOS 数字键盘的输入类型

...发iOS设备上的小键盘,键盘类型是UIKeyboardTypeDecimalPad,你可以在这里看到:我需要用HTML输入元素触发它,可以吗?作为参考,这里有一些没有解决方案的老问题:q 查看详情

输入类型数字使用逗号 - 将点更改为逗号

...;inputtype="text"以使用它的问题。在它之后,用户也可以在输入 查看详情

用jquery控制文本框只能输入数字和字母

只为成功找方法,不为失败找借口!用Jquery控制文本框只能输入数字和字母  在公司开发WinForm项目时,发现公司自主研发的textbox控件非常强大,可以实现"只能输入数字"、"只能输入字母"和"只能输入数字和字母"的三种输入限... 查看详情

有啥方法可以在CSV中输入用逗号分隔的数字?

】有啥方法可以在CSV中输入用逗号分隔的数字?【英文标题】:AnywaytoinputnumbersseparatedbycommainCSV?有什么方法可以在CSV中输入用逗号分隔的数字?【发布时间】:2020-01-0808:36:33【问题描述】:我需要上传一个包含逗号分隔数字的CSV... 查看详情

javascript/jquery 输入验证

】javascript/jquery输入验证【英文标题】:javascript/jqueryinputvalidation【发布时间】:2014-03-1713:04:49【问题描述】:我有一个表单,用户可以在单击按钮时添加更多输入框。用户可以拥有任意数量的输入框。我不打算添加用于删除字... 查看详情

逗号自动添加到 Swift 中的 TextField

...在开发一个状态栏应用程序。目前我只有一个下拉菜单,可以退出应用程序或打开首选项窗口。窗口中有一个文本字段,用于输入数字值。在测试时,我注意到当我使用.orderOut隐藏窗口时,我的号码中会出现一个逗号。不知道为... 查看详情