gpt4 book ai didi

html - 输入类型 ="number"与货币格式(千位分隔符)

转载 作者:行者123 更新时间:2023-12-02 21:02:22 26 4
gpt4 key购买 nike

这个问题已经被问过很多次,并且已经提供了大量示例,要么使用大量 JavaScript,要么使用 inputmodepattern带有一些正则表达式的属性。然而,这些似乎都不能与数字键盘一起使用(至少在我的 iPhone 上)。

因此我的问题是:这不可能吗? (简单明了的 HTML5)

我需要一个<input>对于具有即时格式的货币,可以像这样编辑数字:1,000,000.00或者,更改国家/地区时,更改为 1 234 567,89 并且出现数字键盘(对于手机很重要)。注意千位分隔符。

最佳答案

今天只有 HTML5 无法工作。 (2016年6月6日)

想要是这样的:

<input type="text" pattern="your-pattern" inputmode="numeric">

但是,inputmode尚不支持任何浏览器。

上面的代码解释:

  • 我们不能使用 type="number",因为该类型不支持 pattern 属性,因此我们使用 type="text"。更好的选择可能是 type="tel" 因为它还涉及数字和分隔符。但是,我不知道这的语义含义(例如在 SEO 和屏幕阅读器上)。最安全的方法是text
  • inputmode 是新的,允许您指定需要哪种输入模式。正如您可以想象的那样,对于移动设备特别有用

考虑到您想要从一种标准表示法动态转换为另一种标准表示法,您将必须使用 JavaScript,以便如果您确实想使用 number 类型,则可以将其用于模式验证。或者也许还有另一个公共(public) API 可以通过 JS 控制键盘(但我怀疑,可能会导致安全问题)。

最后,一如既往:如果您的验证很重要,请在服务器端进行。客户端永远不应该被信任。 (即使他们有cookie。)

关于html - 输入类型 ="number"与货币格式(千位分隔符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37659841/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com