jQuery 中的数字格式(输入掩码)

发布于 2024-11-17 19:02:37 字数 285 浏览 2 评论 0 原文

我正在尝试在文本字段中设置数字格式,如下所示:

123,456,789

我知道有很多 jQuery 插件可以执行此操作,但是,它们都会更改实际值。我只是想让它看起来格式化,而不是格式化发送。

例如,如果我在文本字段中输入 23845,我希望它在视觉上转换为 23,845,但是当我发送表单时,我希望它作为 发送>23845

有谁知道我怎样才能实现这一目标?我见过的所有其他解决方案都会更改实际提交的值。

I'm trying to format numbers in a text field like so:

123,456,789

I know that there are a lot of jQuery plugins to do this, however, they all change the actual value. I just want it to look formatted, and not be sent formatted.

For example, if I type in 23845 into my text field, I want it to visually convert to 23,845, but when I send the form I want it to send as 23845.

Does anyone know how I can achieve this? All other solutions I've seen change the actual submitted value.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

童话里做英雄 2024-11-24 19:02:37

AFAIK,掩码插件不会更改值,只会更改显示: http://plugins.jquery。 com/plugin-tags/mask

[编辑]在所有插件列表中,我在我的代码中使用了这个:https://github.com/RobinHerbots/jquery.inputmask ([编辑2] 并按您想要的方式工作 我已经检查了我使用它的代码默认行为是它发送掩码值,您需要使用一个选项来取消掩码,正如我在评论中所说的那样)

AFAIK, the masks plugin do not change the value but only the display : http://plugins.jquery.com/plugin-tags/mask

[edit] within the list of all the plugins, i've used this one on my code : https://github.com/RobinHerbots/jquery.inputmask ([edit 2] and worked as you want i've checked the code where i used it and the default behavior is that it sends the mask with the value, you need to use an option to unmask as i've said in my comment)

白云悠悠 2024-11-24 19:02:37

请尝试以下操作:

<script type="text/javascript">

        $(document).on('keyup', '.test', function() {
            var x = $(this).val();
            $(this).val(x.toString().replace(/,/g, "").replace(/\B(?=(\d{3})+(?!\d))/g, ","));
        });
    </script>

    <form>
       <input class="test" type="text" />
    </form>

Please try the following:

<script type="text/javascript">

        $(document).on('keyup', '.test', function() {
            var x = $(this).val();
            $(this).val(x.toString().replace(/,/g, "").replace(/\B(?=(\d{3})+(?!\d))/g, ","));
        });
    </script>

    <form>
       <input class="test" type="text" />
    </form>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文