javascript - 只允许数字,十进制值最多两位,删除和退格
问题描述
在我的 jquery 代码中,我只对数字和小数点进行验证,它限制了特殊字符。但它也限制退格和删除键。那么,如果有人可以在这个问题上帮助我?
Allow = [仅数字,十进制值最多两位,退格和删除]
Restrict = [特殊字符粘贴选项和字母]
在 jquery 中进行验证。
提前致谢。
<label for="proposal_price">price</label>
<input type="text" class="form-control" id="proposal_price" name="proposal_price">
$('#proposal_price').keypress(function(event) {
var self = $(this);
self.val(self.val().replace(/[^0-9\._\b]/g, ''));
if (((event.which != 46 || (event.which == 46 && $(this).val() == '')) ||
$(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
}).on('paste', function(event) {
event.preventDefault();
});
解决方案
推荐阅读
- javascript - 如何在点击时正确更改 react-bootstrap DropdownButton 的标题?
- bash - 如何在不退出 shell 的情况下执行 bash 脚本
- java - 如何从用户选择的文件夹中正确设置图像的 Uri 以显示在 ImageView 中?
- angular - 在浏览器中预览 Excel 文件 - Blob 数据
- spring - 使用过滤器和包装器时出现弹簧错误
- android - 上传与目标 API 级别相关的发布版本时播放商店抛出错误
- javascript - 如果未在 Array 中找到字符串,则 Array.Find 失败
- json - 模型的 JSON 组织
- tensorflow - ValueError:('无法解释初始化标识符:',0.2)
- android - Android9.0 InputMethod超出屏幕范围