Javascript jquery select2插件正则表达式是否允许使用字符?

Javascript jquery select2插件正则表达式是否允许使用字符?,javascript,jquery-select2,Javascript,Jquery Select2,是否需要为用户输入定义一组“允许的”字符?例如,仅用于字母数字输入。在官方文档中似乎找不到它我没有找到任何关于在输入中键入掩码/正则表达式的信息。 但您可以在select2提供的“打开”事件中执行此操作。 大概是这样的: $('select of the select2 input or select').on('select2-open',function(e){ // apply your mask on this element -> $('.select2-input')

是否需要为用户输入定义一组“允许的”字符?例如,仅用于字母数字输入。在官方文档中似乎找不到它

我没有找到任何关于在输入中键入掩码/正则表达式的信息。 但您可以在select2提供的“打开”事件中执行此操作。 大概是这样的:

$('select of the select2 input or select').on('select2-open',function(e){
    // apply your mask on this element -> $('.select2-input')
});
希望对你有帮助。
再见

您可以使用createSearchChoice选项来实现这一点,该选项允许您定义自定义函数以根据用户输入创建标记。要禁止包含字母数字字符以外的标记,select2应初始化为:

$("#mySelect").select2({
            createSearchChoice: function(term) {
                if(term.match(/^[a-zA-Z0-9]+$/g))
                    return { id: term, text: term };
            },
            formatNoMatches: "Enter valid format text"})
如果用户键入的文本包含非字母数字字符,则select2下方的下拉列表将不显示匹配项。无需指定自定义formatNoMatches,但与默认的“未找到匹配项”相比,它更有助于用户了解其输入不被接受的原因

更新:


从select2版本~
4.0开始
这个函数现在被称为
createTag
今天,我正在寻找一种方法,在下拉列表(select2 v3)中显示的输入上应用自定义掩码,我找到了这个主题

经过一些研究后,我看到了方法
select2(“容器”)
,并查看了我找到的源代码
select2(“下拉”)
(不在文档中)

因此,我的最终代码是(出于贡献目的):


对于现在来到这里的人,此选项从开始已重命名为
createTag
<代码>术语现在的形式也是
{term:'string'}
$('my-select2').on('select2-open',function(e){
    var input = $(this).select2("dropdown").find('.select2-input');
    // ...
});