jQuery自动完成必须匹配没有任何影响

Joh*_*unt 4 javascript jquery autocomplete jquery-ui-autocomplete

我正在使用jQuery 1.4.4和jQuery UI 1.8.9.我有一个非常好的自动完成字段,但是我想将输入仅限于自动完成后端提供的内容.

该文件说明:

mustMatch Boolean默认值:false

如果设置为true,则自动完成程序将仅允许后端显示的结果.请注意,非法值会导致输入框为空.

但是,当我将mustMatch设置为true时,它没有任何区别 - 我仍然可以输入任何我喜欢的内容并且没有任何反应.

我很确定这是我正在做的事情,而不是一个bug,因为我没有在谷歌上看到任何指向那个的东西.

这是一段代码片段:

    $( ".client" ).autocomplete({
    minLength: 2,
    mustMatch: true,
    source: function( request, response ) {
        var term = request.term;
        if ( term in client_cache ) {
            response( client_cache[ term ] );
            return;
        }

        client_lastXhr = $.getJSON( "amex/start.php?action=autocomplete&field=client", request, function( data, status, xhr ) {
            client_cache[ term ] = data;
            if ( xhr === client_lastXhr ) {
                response( data );
            }
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

谁能看到我做错了什么?谢谢你的帮助!

And*_*ker 6

您可能在弃用的插件的文档页面上找到了此选项.jQueryUI的当前文档位于此处.

看起来他们删除了该mustMatch选项,但根据此StackOverflow问题,您可以自己实现它.