【问题标题】:Using commas in a number type input在数字类型输入中使用逗号
【发布时间】:2020-11-11 07:43:57
【问题描述】:

我有一个input 字段type="number",我想在该字段中放置一个可能很大的初始值。我被特别要求用逗号显示大数字以使其更具可读性,因此我使用.toLocaleString() 函数将数字作为带逗号的字符串获取。

Chrome 似乎不允许在数字字段中使用逗号。有没有办法解决?如果可能,我不想使用文本字段,因为我不希望用户在任何情况下都能够输入任何字母,如果可以避免的话,我宁愿不必进行输入验证。

有没有办法在跨浏览器友好的数字字段中显示带逗号的数字?或者,有没有办法在数字字段中显示任意字符串?

【问题讨论】:

    标签: html html-input


    【解决方案1】:

    根据Mozillaplaceholder 属性可以保存任意字符串,但该属性需要使用carefully

    <input type="number" placeholder="1,000,000" step="10" 
     onClick="this.value = this.value || 1000000" />

    【讨论】:

    • 这是我所期望的最接近我想要的东西。但不幸的是,它使占位符文本变灰。并不是我想要一个字符串来表示在框中输入的内容,我希望框中已经有一个值,用户可以更改或不执行任何操作
    • 您不能在input type="number" 元素中显示带有可编辑逗号的数字。您可以获得的最接近的是占位符。我添加了一个onClick 属性,如果该字段为空,它将自动填写数字。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-13
    • 2021-11-05
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    • 2015-10-03
    • 1970-01-01
    相关资源
    最近更新 更多