javascript - 如何限制在输入类型 =“数字”中输入十进制值
问题描述
我无法将输入字符仅限于整数。有没有一种方法可以限制十进制数或浮点数被输入输入类型=“ number
”?
我还尝试了以下方法,方法是在触发事件时.
替换为:''
keyup
$("#myForm").on('submit', function(e) {
e.preventDefault();
});
$("#number").on('keyup', function() {
var regex = new RegExp(/\d+\.\d?/g);
var number = $(this).val();
if (regex.test(number)) {
number = number.replace(/\./g, '');
$(this).val(number);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="myForm" action="//google.de">
<p>Input type number step 1</p>
<input type="number" name="number" id="number" step="1" min="0"/>
<input type="submit" />
</form>
使用上面的代码,案例结果如下:
WORKS:
2.3
FAILS:
2..3
2….3
2.3.3.3.3.3.3.3.3.3.3.333...3
我只需要允许 2(任何整数),并且在所有其他情况下(包括复制和粘贴),应该删除小数。
所以我的最后一个问题是,如何限制浮点数在输入字段中输入type="number"
?如果那不可能,那么我该如何更改上述代码以满足我的要求?
编辑:
如果此问题与另一个问题部分匹配,请不要关闭此问题。我也在这里写了一个代码。我想知道,它有什么问题。
解决方案
推荐阅读
- ios - 无法在一个视图控制器上使用两个 UIPickerView
- javascript - 如何通过 ajax 将表单发送到我的 php 页面
- javascript - 如何在不需要 ID 的情况下记录嵌套的输入元素值?
- tensorflow - 具有可变依赖关系的`tf.data.Dataset.map`
- python - 如何使用 python 虚拟环境运行 cronjob?
- sql - 如何将不同表中的其他列值获取到查询中?
- java - 如何将 @Nonnull 注释应用于包括类型使用和类型参数在内的所有内容?
- django - 如何将 django web 应用程序部署到谷歌云?
- c# - 如何让 Nuget Gallery 支持 mysql?
- google-apps-script - 隐藏/取消隐藏列