如果有空格或非数字字符,HTML5 输入类型=数字值在 Webkit 中为空?

2024-07-01

这对我来说是奇怪的行为,但在 Webkit 浏览器(Chrome/Safari、notFirefox)如果我在一个数字字符串中包含一个空格<input type=number>那么value该输入的内容为空。

请参阅这个 JSFiddle:http://jsfiddle.net/timrpeterson/CZZEX/5/ http://jsfiddle.net/timrpeterson/CZZEX/5/

这是代码:

<input id='withOutspace' type='number' value='123'>
<input id='with_space' type='number' value='123 123'>
<button>click</button>

$('button').click(function(){ 
    alert("withOut:"+$('#withOutspace').val()+" |||| with:"+$('#with_space').val());
});

如果你去这个 JSFiddle http://jsfiddle.net/timrpeterson/CZZEX/5/,你会注意到with_space输入为空。但是,如果您在其中输入一个包含空格或任何非数字字符的数字,则警报将提示输入为空。

显然,这对于使用信用卡号等进行表单验证来说是一场灾难,所以有人对此有破解吗?


黑客是使用type="tel"代替type="number".

这解决了 2 个主要问题:

  1. 它会在移动设备上调出数字键盘
  2. 它验证了(并且是not空),以数字或非数字作为输入。

请看这个 JSFiddle:http://jsfiddle.net/timrpeterson/CZZEX/6/ http://jsfiddle.net/timrpeterson/CZZEX/6/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果有空格或非数字字符,HTML5 输入类型=数字值在 Webkit 中为空? 的相关文章

  • 使用 Javascript 隐藏数据网格列?

    我有一个包含大约 20 列的 net 数据网格 我需要使用 JavaScript 通过单击按钮来切换列的可见性 有任何想法吗 您想使用 COLGROUP 来执行此操作 否则您必须应用样式every细胞开启everyrow 这将非常低效 并且
  • 点运算符不获取 Mongoose Document 对象的子属性

    console log gt gt gt gt gt gt user user outputs gt gt gt gt gt gt user username user1 salt 3303187e50a64889b41a7a1c66d3d
  • 如何在 JavaScript 中访问 Chrome 拼写检查建议

    如何检测 JavaScript 文本区域内的拼写错误 有与此相关的事件吗 如何访问 Chrome 针对拼写错误单词的拼写检查建议 如何访问 Chrome 针对拼写错误单词的拼写检查建议 尽我所知 你不能 https stackoverflo
  • 使用 getElementById 获取锚标记的对象

    anchorobject document getElementById backbutton alert anchorobject a href http www hotmail com back a 上面的代码提醒 href 属性字符串
  • 如何在 SASS 中从 Web 添加 .ttf 字体文件以在 HAML 中显示

    font face font family MyFont src url https font name ttf raw true font main MyFont sans serif some class font family fon
  • 限制 JavaScript 函数调用,但进行排队(不丢弃调用)

    函数如何限制其调用速率 如果调用过于频繁 则不应丢弃 而应排队并及时间隔开 相隔 X 毫秒 我看过throttle http drupalmotion com article debounce and throttle visual exp
  • 在本地计算机上验证 HTML

    我目前正在尝试学习 HTML 和 Java EE Servlet 编程 我的本地计算机 Orion 应用程序服务器 上运行着一个应用程序服务器 并且我正在使用同一台计算机上运行的浏览器连接到我部署在该服务器上的网页 定向到http loca
  • 未捕获的 NotFoundError:无法在“Node”上执行“insertBefore”:

    我有一个div另外三个里面的哪里div附加如下 状态值是通过循环 api 的结果来设置的componentWillReceiveProps 但我遇到了一个错误的问题 Uncaught NotFoundError Failed to exec
  • 禁用 WebSocket 证书验证

    我需要禁用 WebSocket 的证书验证 因为我使用的是自签名证书 我在这个问题中发现Websocket SSL 连接 https stackoverflow com questions 30902547 websocket ssl co
  • MomentJS:如何将 MM/DD/YYYY 中的日期解析为 DD/MM/YYYY

    如何在澳大利亚和美国时间格式中使用 moment js 例如 07 08 2017 对于两种时间格式都有好处 但是 30 08 2017 对于 moment js 无效 但我可以有这样的 dateTime 您可以在这里检查 http jsf
  • PHP Post 数组的数组

    我想从 HTML post 请求更改两个不同的表到运行 PHP 的服务器 以前 当我只想更改一张表时 所有列和值都放入 POST 数组中 所以我会 colname1 gt val1 colname2 val2等等 然后我将循环 POST 来
  • 当没有电子邮件客户端时,“mailto:”会做什么?

    我正在开发一个网站 什么是mailto 如果没有电子邮件客户端 如 Outlook Thunderbird 等 如何打开 它可以在我的电脑上运行 该电脑装有 Outlook 但如果有人想要怎么办 mailto 例如 在 gmail com
  • d3.js 雷达图 - 填充线条之间

    我正在尝试在其中两个三角形之间创建填充 例如在红色和绿色三角形之间创建红色填充 有人知道如何做到这一点吗 我见过另一个雷达图的例子 我相信它做了类似的事情 尽管我认为他们使用CSS而不是d3创建填充 使用径向图用 mbostock 的答案解
  • Javascript“悬停时”循环

    任何人都可以帮助我解决这个问题 我有一个按钮 当悬停时会触发一个操作 但我希望只要按钮悬停就重复它 我很感激任何解决方案 无论是在 jquery 还是纯 javascript 中 这是我的代码此时的样子 在 jquery 中 var scr
  • 将 div 放置在 activeX 对象上

    我有一个需要在 ActiveX 对象上弹出的 div 框 但 ActiveX 对象似乎具有无限高的 z 索引 即使当我将该索引设置为低时也是如此 我的 div 框继续显示在 ActiveX 对象下 有任何想法吗 您需要在要覆盖的对象上放置一
  • 与 Chrome 内容安全策略配合使用的 Javascript 模板引擎

    Chrome API 的清单版本 2 删除了执行不安全评估的功能 这意味着使用 eval 函数或通常从文本动态创建函数 看起来大多数 如果不是全部 Javascript 模板引擎都会这样做 我使用的是 Jaml 但我尝试了其他几个 如bac
  • 画布中圆弧的不同 fillStyle 颜色

    我想这个问题的解决方案非常简单 如果这是非常明显的 请提前道歉 但我似乎无法弄清楚如何为两个不同的弧设置两个不同的 fillStyles 我只是想能够绘制不同的彩色圆圈 下面我介绍了我通常如何在画布中使用其他形状 绘图方法来完成此操作 但由
  • 通过 http 在两个 Node.js 服务器之间传输文件

    我有两个通过 http 相互通信的 node js express 服务器 server A它还与浏览器通信并可以处理文件上传请求 当文件上传到server A我想将其原样转移到server B以便进一步加工 最好的方法是什么 最好与请求
  • VueJs 操作内联模板并重新初始化它

    这个问题类似于VueJS 在内联模板组件中重新编译 HTML https stackoverflow com questions 34087195 vuejs re compile html in an inline template co
  • VueJs 操作内联模板并重新初始化它

    这个问题类似于VueJS 在内联模板组件中重新编译 HTML https stackoverflow com questions 34087195 vuejs re compile html in an inline template co

随机推荐