【问题标题】:Get incorrect value from input type='number'从输入 type='number' 获取不正确的值
【发布时间】:2019-07-02 11:52:41
【问题描述】:

有一个输入字段,我需要获取输入的字符串。

$("#test").on("change", function(){
  console.log($(this).val());
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type='number' id="test">

这是有效的。但是,如果我复制/粘贴不正确的字符串(例如:“123231,3232.00”)到输入,console.log 返回空字符串。我如何获得粘贴值?

【问题讨论】:

  • 你不能。如果值在解释为数字时不起作用,则“数字”&lt;input&gt; 不会为您提供值。 (当然,在真正支持“数字”输入字段的浏览器中。)
  • Chrome 甚至不让我在其中粘贴逗号...
  • Josh Lee,尝试复制并粘贴字符串“123231,3232.00”

标签: javascript jquery html google-chrome


【解决方案1】:

您在 HTML 输入元素中使用了 type 属性,其值为 number。输入必须是具有此属性值的数字

        type='number' in <input type='number' id="test">  

因此,如果您将在输入中输入数字以外的值,它将给您空结果。
从输入元素中删除 type 属性,或者您可以使用正确的输入值。

示例:
1)输入值:12354,结果为12345(与上述情况正确)
2)输入值:“12345”,结果为空(由于输入元素中的type属性

可以在这里查看,根据需要使用属性值:https://www.w3schools.com/tags/att_input_type.asp

【讨论】:

    猜你喜欢
    • 2022-11-19
    • 2017-11-22
    • 1970-01-01
    • 1970-01-01
    • 2015-06-15
    • 1970-01-01
    • 2016-07-02
    • 2015-08-18
    • 1970-01-01
    相关资源
    最近更新 更多