js 正则验证输入框只允许输入正整数或者负整数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 正则验证输入框只允许输入正整数或者负整数?相关的知识,希望对你有一定的参考价值。

输入框只能填正整数或者负整数(不能是0),其他的都替换成'',
<a-input oninput="this.value=this.value.replace(/^(-)?[1-9][0-9]*$/g,'')" />
这个只能是匹配的,怎样让它取反啊,在线等,挺急的

参考技术A <input type="number" name="" onkeydown="suibian(event)" />

      function suibian(e)
        console.log(e)
        if((e.keyCode>=97&&e.keyCode<=105) ||(e.keyCode>=49&&e.keyCode<=57))
          e.returnValue = true
          return;
        
        e.returnValue = false
      

参考技术B oninput="this.value=/^-$|^-?[1-9][0-9]*$/.test(this.value)?this.value:''"

javascript正则处理控件输入数字

我有一个input 我想让他只能输入 0-23的正整数 要怎么做
用正则表达式

参考技术A <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
function chkInput(input)
var value = input.value;
var msg = document.getElementById('chkResult');
var resultChar = '';
if(/^[0-2][0-3]?$/.test(value))
resultChar = '√';
else
resultChar = '<font color="red">只能输入0-23之间的整数</font>';

msg.innerHTML = resultChar;

</script>
</head>

<body>
<input type="text" onpropertychange="chkInput(this);" oninput="chkInput(this);" /><span id="chkResult"></span>
</body>
</html>
参考技术B 用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d] /g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"本回答被提问者采纳 参考技术C <script>
function checkNum(inpt)

var re = /^[0-23]\d*$/;
if (!re.test(inpt.value))

alert("必须为23及以内正整数!");
return false;


</script>

<input type=text value="55" />
<input type=button value="点击" onclick="checkNum(this);" />

以上是关于js 正则验证输入框只允许输入正整数或者负整数?的主要内容,如果未能解决你的问题,请参考以下文章

js 正则表达式 来控制输入框 只能输入 7位正整数和2位小数,点号只允许输入一次~

js正则表达式 判断输入框是不是为正整数或者正整数保留两位小数

求JS的判断输入数字必须为正整数的正则表达式

计数排序算法 - 以负整数和正整数作为输入(不允许使用 Map)

如何用正则表达式限制只输入整数(包括负整数和0)

正则表达式怎么来验证输入框中只能输入整数而且不能以0开头;就是不能输入001这样的数字;