猿问

无法在输入中输入数字或特殊字符

以下内容在大多数情况下都适用;但是,数字仍然可以通过两种方式输入:“复制粘贴”以及从浏览器缓存/建议中输入,即如果您的浏览器从历史记录中为您提供填充输入的建议。仍然可以通过这两种方式实现数字。

无论如何要完全消除在字段中输入数字的能力吗?

<input type="text" data-value-field="value" name="styleName" onkeypress="return /[a-z]/i.test(event.key)" />


万千封印
浏览 91回答 2
2回答

弑天下

检查这个abc.oninput = function() {&nbsp; const val = this&nbsp; if (/[0-9~`!@#$%\^&*()+=\-\[\]\\';,/{}|\\":<>\?¬£.]+/.test(this.value)) {const i = this.value.match(/[0-9~`!@#$%\^&*()+=\-\[\]\\';,/{}|\\":<>\?¬£.]+/g)if (i !== null) {&nbsp; i.map(function(el) {&nbsp; &nbsp; val.value = val.value.replace(el, '')&nbsp; })}&nbsp; }}<input type="text" data-value-field="value" name="styleName" id="abc" />

吃鸡游戏

onpaste="return false"用于取消粘贴事件。autocomplete="off"用于防止自动完成。setInterval(() => { ... }, 100);用于定期检查输入并删除任何数字或特殊字符。这可以防止用户在开发者控制台中使用input.value = " ... "将输入值设置为无效值,因为输入将自动更正。const input = document.getElementById('cleanse');setInterval(() => {&nbsp; input.value = input.value.replace(/[^a-zA-Z ]/g, "");}, 100);<input type="text" data-value-field="value" name="styleName" onkeypress="return /[a-z]/i.test(event.key)" onpaste="return false" autocomplete="off" id="cleanse" />
随时随地看视频慕课网APP

相关分类

Html5
我要回答