javascript - 将输入字段(类型=数字)限制为 1 到 20

标签 javascript html

我有一个输入字段:

    <input id="thing" type='number' placeholder='Up to 20 tickets' min='1' max='20' name='tickets'>

尽管我列出了最小和最大数字,但它仍然接受在字段中输入随机字母等。

我只想在用户输入任何类型时允许数字 1 到 20 出现在该字段中。我该怎么做?

“输入”DOM 事件? 一些 HTML 表单魔法?

更新哈哈,好吧,动态创建的表单输入的功能与普通输入不同。值字段不与用户操作 Hook 。

最佳答案

永远不要相信用户的输入。限制 html 输入中的值只是为了方便用户。即使您以某种方式限制了用户直接更改输入值的能力,他仍然可以按 f12(在 Chrome 中),并手动将值更改为他想要的任何值。

话虽如此,您的代码工作得很好,并且执行您希望它执行的操作 - 它限制用户只能输入 1 到 20 之间的数字。不过,在对这些数据执行任何操作之前,您必须在服务器,所以服务器将确定它是否真的是一个数字,并且它确实在 1 到 20 之间,因为正如我所说 - 没有办法阻止用户在输入中输入他想要的任何内容。

关于javascript - 将输入字段(类型=数字)限制为 1 到 20,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44058823/

相关文章:

javascript - 如何像gmail一样删除javascript代码?

javascript - react .js : Uncaught TypeError: undefined is not a function

html - 试图让图像适合盒子和盒子以响应

javascript - React-原生货币输入

javascript - 在解决 promise 之前运行多个 ajax 调用

html - CSS 子组合器 (>) 不工作

html - C替换字符串中的html标签

javascript - v-bind 没有检测到数组内容的变化(vue js)

javascript - 我正在尝试将一个 JSP 页面以及输入文本值重定向到另一个页面

javascript - 引用调用对象