javascript - 输入字段仅接受特定数字

标签 javascript html forms validation input

我已经创建了一个表单,现在我想在其中添加一个输入字段,该输入字段只接受特定的数字,即数字“4”。这更像是一次垃圾邮件检查,其中询问用户“1+3 的答案是什么?”然后他/她必须在输入字段中输入数字“4”,以便处理表单。这也可以以这样的方式工作:如果在输入字段中输入任何其他数字并提交表单,则会触发一个弹出窗口来解释错误。

我创建了一个jsfiddle它只接受数字 4,但遗憾的是它允许接受“句号”。

HTML:

<input id="humancheck" type="text" maxlength="1" name="humancheck" required />

Javascript:

jQuery('#humancheck').keyup(function () { 
    this.value = this.value.replace(/[^4-4\.]/g,'');
});

最佳答案

您的正则表达式应该只替换 [^4] (任何不是 4 的字符)。我不确定为什么您还包含 -4 (范围)和 \. ('.' 字符)。

请注意,确保 keyup 的安全并没有多大帮助。任何人都可以启动 webkit 检查器并手动在其中放置 3。如果这只是一个有趣的实验,那也很酷:)

关于javascript - 输入字段仅接受特定数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19124778/

相关文章:

python - 清理提交的表单数据中的 HTML

javascript - 使用 ngx-uploader 模块上传到 s3 存储桶后无法打开图像文件

html - 如何阻止内容与标题重叠?

javascript - 创建一个 div 并放置它

HTML/CSS - 为什么打印时背景颜色变成白色?

html - 不要在一个特定的输入上包含 css 样式

forms - Symfony 2 使用一对多数据库关系的嵌入式表单

javascript - 如何将 javascript 对象放入数据表 JSON 中?

javascript - 将矩阵阵列旋转 180 度?

javascript - 从 Javascript onclick() 函数中抓取有关爬行和信息的建议