![](/img/trans.png)
[英]How do I restrict a string to a specific set of characters in JavaScript?
[英]How can I restrict form input to specific characters with a regex?
我为用户制作了一个正则表达式,只允许输入这些字符。 如果用户写例如'@'它不应该允许它,但是在我的代码中如果用户按下@而不是按下选项卡,'@'仍然保留在那里。
function onlyAlphabet(inputVal) { var patt = /^[a-zA-Z.123456789]+$/; if (patt.test(inputVal)) { document.getElementById('facebook').value = inputVal; } else { var txt = inputVal.slice(0, -1); document.getElementById('facebook').value = txt; } }
<div class="form-group mb-3"> <label for="exampleFormControlTextarea1" class="fw-bold my-1 fs-7" id="text-color1">Facebook</label> <input type="text" placeholder="Facebook" onkeypress="onlyAlphabet(value)" id="facebook" class="form-control" name="facebook" value="<?php echo $row['facebook']?>" style="padding-left: 0;important: border; none: border-bottom; 1px solid #E8E8E8: border-radius; 0 !important;"> </div>
您应该添加onchange="onlyAlphabet(value)"
和onblur="onlyAlphabet(value)"
以确保在任何情况下都会调用它
必须设置 oninput 而不是 onkeypress
您可以使用以下 3 种方式中的任何一种来做到这一点 -
onChange="onlyAlphabet(value)"
- 当输入值改变时onKeyUp="onlyAlphabet(value)"
- 或 onKeyDown,当一个键被释放/按下时onBlur="onlyAlphabet(value)"
- 当焦点离开输入...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.