繁体   English   中英

只允许输入文本框中的数字

[英]allow only numbers in input text box

我想创建一个简单的验证表单,它只允许数字,例如,如果我写入输入字段 223w 我想 console.log('error, write only number'),我不知道这里发生了什么,我js中的新...

HTML 代码:

<div class="inputs mt-4" id="with_cash">
    <input id="inpt" type="text" placeholder="enter only number" />
</div>

JavaScript 代码:

const test = document.getElementById('inpt')

var extest = test.value

var regex = /^[a-zA-Z]+$/;

var regex2 = /^[0-9]+$/;

//thats not works correctly
withCash.addEventListener('input', function () {

    if (!extest.match(regex)) {
        console.log('error write only number')

    } else if (!extest.match(regex2)) {
        console.log('must input number')
        return false;
    }

})

你需要:

  • 阅读正则表达式
  • 创建一个只接受数字的正则表达式/^\d+$/
  • 在事件处理程序测试输入值由正则表达式regexp.test(value)

 const input = document.getElementById('input') const onlyNumbersRegExp = /^\d+$/; input.addEventListener('input', function() { if (onlyNumbersRegExp.test(input.value)) { console.log('only numbers'); } else { console.log('not only numbers'); } })
 <input id="input" type="text" placeholder="enter only number" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM