实时输入文本过滤,仅允许数字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实时输入文本过滤,仅允许数字相关的知识,希望对你有一定的参考价值。
您好,我正在尝试使用javascript进行实时输入type =“ text”过滤器,该过滤器仅允许数字和点。我写的
Javascript:
<script>
function thirdTaskFunction(evnt)
evnt = evnt || window.event;
var charCode = evnt.which ? evnt.which : evnt.keyCode;
return /\d/.test(String.fromCharCode(charCode));
function thirdTaskFunction(evt)
var charCode = (evt.which) ? evt.which : evt.keyCode;
if(charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
function thirdTaskFunction()
var thirdInput = document.getElementById("thirdTaskInputText");
thirdInput = thirdInput.onchange = thirdTaskFuncion;
var valid = /^\-?\d+\.\d*$|^\-?[\d]*$/;
var number = /\-\d+\.\d*|\-[\d]*|[\d]+\.[\d]*|[\d]+/;
if(!valid.test(this.value))
var compare = this.value.match(number);
this.value = compare ? compare[0] : '';
</script>
html:
<div id="thirdTaskDIV">
<input id="thirdTaskInputText" type="text" placeholder="Type a number" autofocus onkeypressed="return thirdTaskFunction(event);">
</div>
[我尝试了很多方法,每个thirdTaskFunction()方法都不起作用,我在w3schools上测试了解决方案,所以也许这是原因吗?但是我想我不记得有什么能使它起作用的。而且我知道与“ HTML文本输入仅允许数字输入”非常相似,但是它没有用。。所以我希望有人在这里告诉我pappyn是什么。
答案
仅允许在输入字段中输入数字的一种方法是使用按键事件监听器。因此,您需要选择输入字段并为其提供事件监听器,如下所示:
另一答案
。点的事件代码(由于不赞成使用keyCode
属性,所以<< NOT keyCode
以上是关于实时输入文本过滤,仅允许数字的主要内容,如果未能解决你的问题,请参考以下文章