gpt4 book ai didi

javascript - 将文本输入限制为字符列表

转载 作者:行者123 更新时间:2023-11-28 11:22:58 25 4
gpt4 key购买 nike

我想在按键时将字符输入到 html 文本输入字段中然后根据字符列表验证输入的字符如果在该列表中找不到则返回 false

(我不想使用正则表达式)

我所说的“列表”是指:

var acceptable = 'abcd12';

这会阻止输入字符“e”等

html 看起来像这样:

<input id='someId' type='text' onkeypress='return check(this,event);'>

和 JavaScript:

function check(element,e) {
var acceptable = 'abcd12';
// now get what character was entered
// if it's in the list, return true
// if it's not in the list, return false
}

最佳答案

通常,您希望将 onChange 事件处理程序绑定(bind)到输入字段,如下所示:

jQuery('#someId').change(function() {
var acceptable = ['1', '2', 'a', 'b', 'y'];

var text = jQuery(this).val();
var allowed = true;

// Loop through each character in the string
var length = text.length;
for (var i = 0; i < length; i++) {
// This if condition is fulfilled if the character
// is not in the array of acceptable characters
if (jQuery.inArray(text[i], acceptable) != -1)
allowed = false;
}

if (allowed)
// The input is valid
else
// The input contains an unallowed character
});

重要:
始终必须对通过表单提交的数据进行服务器端验证。任何人都可以弄乱脚本中的代码和 HTML 代码。有很多方法可以将虚假数据发送到您的服务器,无论您采取什么措施来防止它。因此,始终进行服务器端验证极其重要,因为服务器环境完全由您控制。

旁注
onChange 事件处理程序仅在字段失去焦点时触发。如果您不希望这种行为,请使用:

jQuery('#someId').on('change keypress paste focus textInput input',function(){
// The same code as above can be used here
}

参见this link了解更多相关信息。

关于javascript - 将文本输入限制为字符列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28376921/

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