jquery - 将用户输入限制为 jquery 自动完成中的可用列表

标签 jquery jquery-ui autocomplete

我正在使用 jquery ui(1.8.11) 自动完成插件。

它有一个简单的自定义行为来检查可用列表中是否存在该值。那是因为我想限制用户使用列表中可用的内容。如果输入不在列表中,它将删除框中的内容。运行良好。

但是以下实现仍然允许用户编写选项中没有的任何内容。我宁愿不让他写一些不存在的东西。

那么有没有一种方法可以在没有选项的情况下立即删除用户要写入的字符?或者更好的是,如果列表中有查找,则只让他输入一系列字符。

这是我到目前为止的代码

$("#autocomplete").autocomplete({
    autoFocus: true,
    delay: 200,
    source: function (request, response) {
        $.ajax({
            url: "/Country/Find", type: "GET", dataType: "json",
            data: { search: request.term, maxResults: 10 },
            success: function (data) {
                response($.map(data, function (item) {
                    return { label: item, value: item }
                }))
            }
        })
    },
    change: function (event, ui) {
        if (!ui.item) {
            $(this).val('');
        }
    }
});

最佳答案

我发现这个问题是为了检索下拉列表的选择! Get selected value in dropdown list using JavaScript?但要删除最后一个字符不知道...

$("#autocomplete").autocomplete({
autoFocus: true,
delay: 200,
source: function (request, response) {
    $.ajax({
        url: "/Country/Find", type: "GET", dataType: "json",
        data: { search: request.term, maxResults: 10 },
        success: function (data) {
            response($.map(data, function (item) {
                    var e = document.getElementById("ddlViewBy");
                    var strUser = e.options[e.selectedIndex].value;
                    if(strUser  != null)
                    {
                        return { label: item, value: item }
                    }
                    else
                    {
                        //remove last char 
                    }
            }))
        }
    })
});

关于jquery - 将用户输入限制为 jquery 自动完成中的可用列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13344883/

相关文章:

jquery - 如何让工具栏保持在页面顶部只希望页面滚动通过一定的高度或元素?

jquery - 响应式 jQuery UI 对话框(以及 maxWidth 错误的修复)

Javascript 按钮 snap.js

jquery - 使用注入(inject)的 jquery 脚本创建可拖动的 div

css - 如何使用 jquery 错误(红色)图标

google-chrome - 禁用Chrome 66的自动完成功能

objective-c - NSTokenField 自动完成

html - 如何让 Safari 自动填充信用卡到期日期月份/年份选择标签?

javascript - 如何让 parent div 单击项目元素和模式上的类

javascript - 将 API 中的数据插入 DOM