我有一个可以控制的字段,不接受字母等。我允许输入“。”以便输入小数。我怎样才能控制不超过一个“.”?
这是我的源代码:
$(".allow_decimal").on("input", function(evt) {
var self = $(this);
self.val(self.val().replace(/[^0-9\.]/g, ''));
if ((evt.which != 46 || self.val().indexOf('.') != -1) &&
(evt.which < 48 || evt.which > 57))
{
evt.preventDefault();
}
});
最佳答案
HTML5 规范允许使用number
输入类型。 number
输入允许的属性之一是 step
,它是数字可能向上/向下的增量:
<form>
<input type="number" step="0.1" />
<input type="submit">
</form>
虽然您可以输入“2.25”之类的内容,但当您尝试提交表单时,任何兼容 HTML5 的浏览器都会告诉您:
这仅适用于兼容 HTML5 的浏览器:CanIUse.com
一如既往 - 不要信任用户发送的任何内容 - 始终在服务器上进行验证;)
关于javascript - 如何控制小数字段以允许输入多个点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44413992/