gpt4 book ai didi

javascript - 如何使用 jquery 或 javascript 在文本框中只允许英文、数字和特殊字符?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:35:53 24 4
gpt4 key购买 nike

我只想在我的网页中输入英文、数字和特殊字符。我想使用 jquery 或 javascript 来应用这个东西。实际上,我的应用程序使用 2 种语言,因此我想这样做。我也想用阿拉伯语做同样的事情..请帮助我。我该怎么做?

最佳答案

您可以尝试以下使用 JavaScript replace method 的代码. replace 方法接受正则表达式模式,因此您可以定义几乎任何您想要/不想在文本框中输入的内容:

<script type="text/javascript">

$('#textboxID').bind('keyup blur',function() {
$(this).val($(this).val().replace(/[^A-Za-z0-9]/g,''))
});

</script>

这里是 jsFiddle 来试试这个:http://jsfiddle.net/leniel/rtE54/


经过深思熟虑,我实现了这段代码:

$("#mytextbox").on("keypress", function(event) {

// Disallow anything not matching the regex pattern (A to Z uppercase, a to z lowercase, digits 0 to 9 and white space)
// For more on JavaScript Regular Expressions, look here: https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions
var englishAlphabetDigitsAndWhiteSpace = /[A-Za-z0-9 ]/g;

// Retrieving the key from the char code passed in event.which
// For more info on even.which, look here: http://stackoverflow.com/q/3050984/114029
var key = String.fromCharCode(event.which);

//alert(event.keyCode);

// For the keyCodes, look here: http://stackoverflow.com/a/3781360/114029
// keyCode == 8 is backspace
// keyCode == 37 is left arrow
// keyCode == 39 is right arrow
// englishAlphabetDigitsAndWhiteSpace.test(key) does the matching, that is, test the key just typed against the regex pattern
if (event.keyCode == 8 || event.keyCode == 37 || event.keyCode == 39 || englishAlphabetDigitsAndWhiteSpace.test(key)) {
return true;
}

// If we got this far, just return false because a disallowed key was typed.
return false;
});

$('#mytextbox').on("paste",function(e)
{
e.preventDefault();
});

您可以在这里阅读更多相关信息:JavaScript regex + jQuery to allow only English chars/letters in input textbox

关于javascript - 如何使用 jquery 或 javascript 在文本框中只允许英文、数字和特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12844477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com